毎日の単純作業を自動化するバッチファイル

book-and-pc-on-desk プログラミング

毎朝、仕事で同じフォルダやファイル、開いていませんか?

開いているのが1つや2つならそんなに時間はかかりませんが、その数が増えると時間がかかりますよね。

それが毎日だと、ファイルを開く作業に、時間が奪われることになります。

そんな単純作業を自動化できれば便利だと思いませんか?

バッチファイルを使うと単純作業を自動化できます。

「バッチファイルってよくわからない」って思うかもしれませんが、1つずつ見ていけば簡単です。

バッチファイルって何?複数のファイルをワンクリックで開きたいと思っている方に向けて説明します。

業務の効率化・自動化できるバッチファイルとは

バッチファイル(英: batch file)とは、MS-DOS、OS/2、Windowsでのコマンドプロンプト(シェル)に実行させたい命令列をテキストファイルに記述したもの。バッチファイルを実行すると、シェルプログラム(一般にCOMMAND.COMやcmd.exe)がそのファイルを読み、その中のコマンドを(通常)一行ずつ実行する。バッチファイルはUNIX系オペレーティングシステムのシェルスクリプトに相当する。

Wikipedia

簡単に言うと、テキストファイルに処理を書いておけば、バッチファイルをクリックするだけで、書いている処理を自動で行ってくれるファイルのことです。

普段している単純作業、繰り返し作業を効率化・自動化するにはもってこいです。

例えば、デスクトップに10個のファイルがあり、それを開くには10回クリックが必要です。

バッチファイルに10個のファイルを開く処理を書いておけば、バッチファイルを1回クリックするだけで10個のファイルを開けます。

Windowsのパソコンとメモ帳があれば作ることができ、面倒な環境構築も不要です。

バッチファイルの作り方とは

バッチファイルは、拡張子が「.bat」または「.cmd」のファイルです。

メモ帳で作ることができ、名前を付けるときに拡張子を「.bat(.cmd)」で保存すればオッケーです。

実際に作ってみましょう。メモ帳を開いて、次のコードを書いてください。

@echo off

rem 電卓を開く
start "" "C:\Windows\System32\calc.exe"

名前を付けて保存します。そのとき、ファイルの種類を「すべてのファイル」にして、ファイル名に「test.bat」と入力してください。文字コードも「ANSI」にしておきましょう。文字化けしてしまいます。

bat-save-as

保存したファイルは、歯車マークのアイコンになったと思います。これが、バッチファイルです。クリックすれば、先ほど書いたコードが実行されます。

クリックしてみましょう。電卓が開いたら成功です。

コードの説明

1行目の「@echo off」は、画面のメッセージ表示をオフにしています。

これがないと、実行したコマンドが画面に表示されてしまいます。

「rem 電卓を開く」は、コメントです。「rem」を書いておけば、その行はコメントとして認識されるので処理されなくなります。

電卓を起動させているのが「start “” “C:\Windows\System32\calc.exe”」の部分です。

「start」は、ウィンドウを開き、プログラムやコマンドを実行するコマンドです。

「start [“タイトル”] [プログラムパス]」で指定します。タイトルは空(””)で、Cドライブの電卓のプログラム(exeファイル)をプログラムパスで指定しています(”C:\Windows\System32\calc.exe”)。

次のコードも電卓を開くことができます。

@echo off

rem 電卓を開く
start C:\Windows\System32\calc.exe

「start」は、一番初めに出てきた「””」をタイトルとして認識します。次のコードはうまく動きません。「C:\Windows\System32\calc.exe」というタイトルのついたコマンドプロンプトの画面がでます。

@echo off

rem コマンドプロンプトが開く
start "C:\Windows\System32\calc.exe"

今回の電卓のプログラムパスの場合「””」で囲っても囲まなくても一緒ですが、パスに「空白」が含まれる場合は「””」で囲まなければうまく動きません。

したがって、少し見た目は汚いですが、「start “” “C:\Windows\System32\calc.exe”」というように書くのがおすすめです。

バッチファイルでフォルダ、ファイルを開く

バッチファイルの中身を書き換えて、ファイルやフォルダを開けるようにしてみましょう。

@echo off

rem デスクトップのworkフォルダを開く
start "" "%userprofile%\desktop\work"

rem Dドライブの日報.xlsx
start "" "D:日報.xlsx"

rem ChromeでYouTubeを開く
set prog="C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
set opt="https://www.youtube.com"
start "" %prog% %opt%

フォルダやファイルも「start」を使うことで、開くことができます。

「userprofile」は、ユーザー環境変数で「C:\Users\アカウント名」を表します。

バッチファイルでは変数は、「%」で囲みます。「%userprofile%」はuserprofileという変数ということです。

「start “” “%userprofile%\desktop\work”」は、デスクトップにある「work」というフォルダを開くというコードになります。「start “” “C:\Users\アカウント名\desktop\work”」でも同じ意味です。

ファイルを開く場合も、ファイルのパスを書けば開くことができます。

「start “” “D:日報.xlsx”」は、Dドライブの「日報.xlsx」という名前のエクセルファイルを開いています。

「set prog=”C:\Program Files (x86)\Google\Chrome\Application\chrome.exe”」ですが、「set」は、変数に値を設定するコマンドです。ここでは「prog」という名前の変数に、Cドライブにあるchrome.exeを格納しています。

「set opt=”https://www.youtube.com”」は、変数「opt」にYouTubeのURLを格納しています。

格納した変数を使って「start “” %prog% %opt%」で開いています。chromeでYouTubeを開いています。

「%opt%」に好きなURLを指定すれば、そのサイトを開くことができます。

「start」の後ろに、開きたいフォルダなどのパスを書くことで、バッチファイルを実行するだけで一気に開くことができます。自分の開きたいフォルダ等に変更して使ってみてください。

まとめ

バッチを使えば業務の効率化・自動化をすることができます。

フォルダやファイルを開くことができるので、バッチファイルに処理をまとめて書いておけば、ワンクリックで複数のフォルダやファイルを開くことができます。

他のプログラム言語のような環境構築も不要で、メモ帳だけで簡単に始めることができます。

バッチファイルでもいろいろできますが、Googleの提供する「Google Apps Script」を使えば、GmailやGoogleカレンダーとも簡単に連携できるのでさらに業務の効率化ができます。

自分用のアプリを作ることも簡単にできます。

以下の記事でGoogle Apps Scriptについて解説しています。

少しでもプログラミングに興味を持っていただければ幸いです。

タイトルとURLをコピーしました