0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【AI活用】環境構築ゼロで始めるWindows自動化!batファイルを最強の実行基盤にする方法

0
Posted at

Windowsのbatファイルでできること整理

最近はChatGPTやClaudeなどのAIにプログラムを書いてもらい、日々の業務やパソコン作業を自動化する人が増えています。

自動化というとPythonやPowerShellが思い浮かびますが、「環境構築の手間を省きたい」「作成したツールをダブルクリック一発で動かしたい」という場合に最も手軽で相性が良いのが、Windows標準のbat(バッチ)ファイルです。

AIに「〇〇するbatファイルを作って」と指示するだけで、特別な設定をすることなくすぐに動くツールが完成します。また、AIで作成したPythonスクリプトやAPI連携ツールをバックグラウンドで起動する「ランチャー(指示役)」としてもbatファイルは非常に優秀です。

この記事では、AIを活用して自動化ツールを作りたい人に向けて、batファイルで何ができるのかを機能別の表形式でまとめました。

1. ファイルとフォルダの基本操作

日常的なファイル操作や整理作業は、batファイルで一括処理できます。

コマンド名 使用例 解説
mkdir mkdir C:\WorkFolder 指定したパスに新しいフォルダを作成します。
rmdir rmdir /s /q C:\TempFolder フォルダとその中のファイルやサブフォルダをまとめて削除します。
del del /f /q C:\Temp*.tmp 指定した条件に一致するファイルを削除します。
copy copy C:\Data*.txt C:\Backup\ ファイルを別のフォルダへコピーします。
move move C:\Downloads*.pdf C:\Docs\ ファイルやフォルダを別の場所へ移動します。
ren ren old_name.txt new_name.txt ファイル名やフォルダ名を変更します。
dir dir /b C:\Data > list.txt フォルダ内のファイル一覧を取得してテキストファイルに出力します。
robocopy robocopy C:\Source D:\Backup /MIR 高速なファイルコピーや、フォルダ間の完全同期を行います。
xcopy xcopy C:\Data D:\Backup /E /H /Y サブフォルダや隠しファイルも含めてまとめてコピーします。

2. アプリ・プロセスの起動と制御

複数のアプリを一括起動したり、特定のプロセスを強制終了させたりする自動化が可能です。

コマンド名 使用例 解説
start start chrome.exe https://example.com アプリケーションやWebサイトを起動します。
taskkill taskkill /im excel.exe /f 指定した実行中のアプリやプロセスを強制終了します。
tasklist tasklist /fi "imagename eq chrome.exe" 現在実行されているプロセスの一覧を表示・検索します。
timeout timeout /t 10 /nobreak 指定した秒数だけ処理の進行を一時停止します。
pause pause キー入力があるまで処理を一時停止し、画面を保持します。
exit exit /b 0 バッチファイルの実行を終了し、終了コードを返します。

3. システム情報取得とネットワーク操作

Windowsのシステム状態確認や、ネットワーク接続のテスト、PC制御を行えます。

コマンド名 使用例 解説
ipconfig ipconfig /all IPアドレスやDNS設定などのネットワーク情報を表示します。
ping ping 192.168.1.1 指定した機器へのネットワーク導通を確認します。
systeminfo systeminfo > sysinfo.txt OSのバージョンやメモリ量などのシステム情報を取得します。
shutdown shutdown /r /t 60 指定した時間(秒)の経過後にPCを再起動またはシャットダウンします。
net start / net stop net stop "Spooler" Windowsのバックグラウンドサービスを開始または停止します。
reg reg query "HKCU\Software\App" Windowsレジストリ情報の参照、追加、変更を行います。

4. 変数・制御構文・ロジック処理

batファイル内での値の保持、条件分岐、繰り返し処理を記述できます。

コマンド名 使用例 解説
set set TARGET_DIR=C:\Data 変数の定義や値の代入、計算を行います。
set /p set /p INPUT=入力してください: ユーザーからのキーボード入力を受け取り変数に格納します。
if if exist "config.ini" ( echo あり ) ファイルの存在や文字列比較による条件分岐を行います。
for for %%i in (*.txt) do ( echo %%i ) ファイル一覧や数値範囲を対象に繰り返し処理を実行します。
goto / :label goto :END 指定したラベルの行へ処理をジャンプさせます。
call call sub_script.bat 別のバッチファイルや定義したサブルーチンを呼び出します。
rem / :: rem ここはメモ書きです 実行されないコメント文をスクリプト内に記述します。
echo echo メッセージ 画面にテキストを表示したり、@echo offでコマンド自体の非表示化を行います。

5. 出力制御と他言語・スクリプト連携

処理結果のログ保存や、PowerShell・Pythonなどの外部ツールとの連携ができます。

コマンド名 使用例 解説
> / >> echo %date% %time% >> app.log 実行結果をテキストファイルに新規作成(>)または追記(>>)します。
powershell powershell -Command "Get-Service" Bat内からPowerShellのコマンドやスクリプトを呼び出して実行します。
python python main.py Pythonスクリプトを起動し、複雑なデータ処理などを委託します。

batファイル運用の注意点

batファイルは手軽ですが、以下の点に配慮して作成する必要があります。

文字コードの制限
日本語を含める場合、文字コードをUTF-8ではなく「Shift-JIS(ANSI)」で保存しないと文字化けが発生します。

複雑な処理の切り分け
JSONやXMLの解析、複雑な画面描画、高度な例外処理が必要な場合は、batファイル単体ではなくPowerShellやPythonの利用を検討する方が効率的です。

単純な定型作業やツール起動のランチャーとしては、現在でも非常に有用な手段と言えます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?