BATファイルで特定のプロセスが起動しているか確認する方法をまとめました。
例としてメモ帳(Notepad.exe)が起動していなければ、起動するというコマンドを記載します。
サンプルコード
@echo off
rem プロセスチェック(一致するプロセスがない場合は、エラーラベルに"0以外"が記録される)
tasklist | find "Notepad.exe" > NUL
rem 起動中の処理(エラーラベル=0)
if %ERRORLEVEL% == 0 (
echo "メモ帳が起動中です。終了してから実行してください。"
rem 起動していない場合の処理(エラーラベル≠0)
) else (
echo "メモ帳を起動します。"
start notepad.exe
)
pauseBAT (Batchfile)4行目:タスクリストに対してプロセス名で検索し、一致するプロセスがない場合は、エラーラベルに”0以外”が記録されます。
7行目:エラーラベルが0の場合は起動中、0以外の場合は起動していないと判断します。