覚えたら書く

IT関係のデベロッパとして日々覚えたことを書き残したいです。twitter: @yyoshikaw

MS-DOSコマンドでファイルパスからディレクトリのパスやファイル名を取得する

C:\app\SampleApp\Launcher.exe というパスがあった時に、
ファイルが存在するディレクトリのパス C:\app\SampleApp\ と ファイル名 Launcher.exe を抽出したい。という要件があった場合

これをWindowsのDOSコマンドで実現するために、


ディレクトリの抽出には以下を使用します。(以下は、 %1 のパラメータを対象としています)

%~dp1

ファイル名の抽出には以下を使用します。(以下は、 %1 のパラメータを対象としています)

%~nx1


上記のコマンドを実行するExtractPath.cmdというファイルを以下のように記述して

@echo off

echo [DirPath]:  %~dp1

echo [FileName]: %~nx1

パラメータにパスを与えて実行すると

ExtractPath.cmd C:\app\SampleApp\Launcher.exe


結果は以下のようになります。

C:\Samples\ExtractPath.cmd C:\app\SampleApp\Launcher.exe
[DirPath]:  C:\app\SampleApp\
[FileName]: Launcher.exe


無事に、DOSコマンドでもファイルパスからディレクトリのパスやファイル名の抽出が実現できました。