%~dp0 ⇒%0にオプション構文の『 ~ 』と『 d 』と『 p 』が付いたもの。
%0 :実行されているファイルのパスです。 ~ :"(ダブルクオート)を除く d :ドライブ文字だけに展開する p :ファイル名を除くパスの部分に展開する あわせると %~dp0 は、『実行されているファイルが置かれているカレントディレクトリ』を表す。 さらに.. %0、%1、%2 などは引数参照と呼ばれ、%1、%2 はバッチに渡される引数を順に表します。 %0は特殊なもので、起動されたバッチファイルのフルパスが格納。 %0で渡されるフルパスには、スペースなどが含まれていることがあるので、ダブルクオートの引用句で囲われています。 このため、%0は
"C:\・・・\・・・\"
となっているため、
%0Filename
は
"C:\・・・\・・・\"Filename
となります。
これでは”(ダブルクオート)が邪魔になるため、%~0 として
%~0Filename
とすると
C:\・・・\・・・\Filename
となる。
コメント