バッチファイルでプログラムを実行する際、オペレーティングシステム(Windows)の環境変数PATHに登録されていない場所のプログラムを実行したい場合があると思います。そのような場合に、バッチファイル内で一時的に環境変数PATHの内容を追加することが可能です。
この記事では、バッチファイルを使って一時的に環境変数PATHに設定を追加する方法を紹介します。
環境変数PATHとは?
環境変数PATHは、実行可能ファイルを探すためのディレクトリのリストです。バッチファイルやコマンドプロンプトからコマンドを実行する際、オペレーティングシステム(Windows)はPATHにリストされているディレクトリを順番に検索して、指定された実行ファイルを見つけ出します。
バッチファイルで現在パスが通っているディレクトリの一覧は、以下のように環境変数PATHをechoで表示することにより確認できます。
@echo off
echo %PATH%
pause
PATHに設定を追加する
バッチファイル内で環境変数PATHに一時的にディレクトリを追加するには、以下のようにsetコマンドを使用します。
@echo off
set PATH=%PATH%;C:\MyProgram\bin
pause
このコマンドは、現在のセッションのPATH環境変数にC:\MyProgram\binを追加します。これにより、MyProgramディレクトリにある実行ファイルを、コマンドプロンプトのどこからでも実行できるようになります。
環境変数の内容を表示する処理も追加して、結果を確認してみましょう。
@echo off
set PATH=%PATH%;C:\MyProgram\bin
echo %PATH%
pause
上記バッチファイルの結果から、新たなパスが末尾に追加されたことが分かると思います。
バッチファイルで追加したパスの影響範囲
バッチファイルを使用してPATHに追加を行う場合、その変更はバッチファイルが実行されているコマンドプロンプトの画面にのみ適用されます。他のコマンドプロンプトや、プログラム、Windowsのシステム全体には影響を及ぼしません。
注意点
- PATHにディレクトリを追加する際は、既存のPATHを上書きしないように注意してください。set PATH=%PATH%;新しいパスの形式を使用して、既存のPATHに新しいパスを追加します。
- PATHに追加するディレクトリのパスに空白が含まれている場合は、ダブルクォートで囲む必要があります。
まとめ
バッチファイル内で環境変数PATHに一時的に設定を追加できることにより、システム全体の設定を変更することなく、プログラムやスクリプトをより柔軟に実行できるようになります。特定の場面でのみパスを通したい場合などにご活用ください。