bat カレントディレクトリ dp0

バッチファイルが存在するディレクトリへ移動する(カレントディレクトリを変更する) バッチファイルを使ってJavaプログラムを起動したいときなどに,バッチファイルが存在するディレクトリへ移動して,そこを基準にその後の処理をしたいことがある.そんな時は%~dp0を使う. 環境変数「%~dp0」がバッチファイルが存在しているディレクトリになります。 C:\> type D:\tmp\test.bat echo %~dp0 C:\> D:\tmp\test.bat D:\tmp\ バッチファイル配下のファイルなんかをコピーしたい時に役立ちそうです。 先ず、カレントディレクトリがバッチファイルと同じパスに ... %~DP0 :自身のフルパス名のパス部分 等が有りますが、この %~DP0 を使えば簡単です。 Z:\xxx\yyy\sample.bat なら Z:\xxx\yyy\ と取得されま … バッチファイルの「cd /d %~dp0」という命令文は、どのような効果がありますか? 実行中のバッチファイルが置かれているフォルダをカレントディレクトリ(作業ディレクトリ)にする為のコマンドです。 … ちなみに、batファイルの初めに cd /d %~dp0 をして、各パスはフルパスではなく相対パスで設定する方法もあるが、batファイルが終了したときのカレントディレクトリが変わってしまうのでお勧めできない。 参考:Linuxで同じことをするには $(dirname $(readlink -f $0)) Windows Vista以降、バッチファイルを「管理者として実行」した場合にカレントディレクトリは「c:¥windows¥system32」となる。 これを回避するには、バッチファイルの先頭のあたりに「cd /d %~dp0」と記述しておけば、 Windows ディレクトリを既定で使用します。」と怒られてしまい実行できない時があります。そのような時は pushd %~dp0 を使います。ちなみに %~dp0 は,バッチファイルがあるカレントディレクトリ名です。 果物名の付いた複数のフォルダを作ります %~dp0 を使用してバッチファイルのパスをカレントディレクトリにセットします。 ただし、cdを使用するとドライブが異なったりするとカレントディレクトリに 設定できません。 そのため、pushdを使うとよいです。 [setcd.bat] バッチファイルが存在しているディレクトリを取得.