2017年11月29日水曜日

バッチで自身のパスに移動する

バッチファイル自身のパスに移動する理由


バッチファイルをダブルクリックで実行した場合には、バッチファイルのパスがカレントディレクトリになります。
しかし、コマンドラインから実行した場合には、実行場所がカレントディレクトリになってしまいます。

基本的には、問題ないのですが、
バッチファイルから相対パスにあるバッチファイルを呼び出す場合には、自分自身の場所を知っておく必要があります。

コマンド

cd %~dp0

※cd コマンドで /dを追加するとドライブの移動も可能。
cd /d %~dp0

説明


「%0」や「%1」・・・には、引数が渡されています。その中で、「%0」はバッチファイル自身のパスが含まれています。

「~」チルダは、そのパスの「”」ダブルクォーテーションを取り除きます。
「d」は、ドライブ名「C:\」を表示します。
「p」は、パス名を表示します。

0 件のコメント:

コメントを投稿