2017-07-26 5 views
0

D:\Desktop\Test0フォルダがあちこちに移動するため、D:\Desktop\Test0\Test1\batch1.batD:\Desktop\Test0\Test2\app.exeを実行して、特定のパスを特定せずに実行します。現在のフォルダのすぐ横にあるバッチ変数

この変数は何ですか?残念ながら私はそれがわかりません。なぜなら、私はこの意図の正式な名前がわからないからです。

答えて

0

バッチファイルは、それ自体を参照することができます。 this pageによれば、~fのような~修飾子を追加して完全なパスを取得し、純粋なファイル名を取得する場合は~nx、親ディレクトリのパスを取得する場合は~dpを返して、返された文字列を変更できます。あなたの状況では

、あなたは、単に直接の親ディレクトリTest1を除外する..を1つ上のレベルに取得し、その後、そのコンテナディレクトリを取得するために、バッチファイルbatch1.bat%~dp0を使用し、プログラムに残りの相対パスを追加する必要がありapp.exeこのように:

"%~dp0..\Test2\app.exe" 
0

Microsoft.com - Using batch parameters

あなたはこれらのバッチファイルプロセッサを使用する場合は、あなたが気にパスの部分を引き出し、APP.EXEする新しいパスを作成することができるはずです。変数を引用符で囲むことを忘れないでください。そうしないと、ファイル名にスペースやその他の特殊文字を扱わないでしょう。ここで

は、同様の質問の例です:%0を使用した場合Batch Extract path and filename from a variable

関連する問題