【バッチファイル】フルパスからパス部分(ファイル名以外)を取得する

バッチファイルで
 ・フルパスから
 ・パス部分(ファイル名以外)を取得
できます!

PR

コード

ここでは例として
 ・デスクトップ配下のファイル「aiueo.txt」の
 ・パス部分(ファイル名以外)名を取得
します。

ファイル「aiueo.txt」
@echo off

rem 対象ファイル
set targetFile=C:\Users\user\Desktop\aiueo.txt

rem 対象ファイルの存在有無を確認
if not exist %targetFile% (
    echo 対象ファイルが存在しないため、処理を終了します。
    echo.
    pause
    exit
)

rem パス部分(ファイル名以外)を取得
for %%a in (%targetFile%) do (
    set folderPath=%%~dpa
)

echo パス部分(ファイル名以外):%folderPath%

echo.
pause
exit

「対象ファイル」を指定します(4行目)。

「対象ファイル」が存在しない場合は、処理を終了します(7~12行目)。

「パス部分(ファイル名以外)」を取得します(15~17行目)。
※「~dp」を記載することで、「パス部分(ファイル名以外)」を取得します。上記では「%%~dpa」としています。

PR

実行結果

フルパスからパス部分(ファイル名以外)を取得できました。
※「C:\Users\user\Desktop\」を取得できました。

実行結果
実行結果
PR

参考①

「ファイルの存在有無の確認」の詳細は、以下の記事をご確認ください。

PR

参考②

上記で使用した以下の詳細は、公式サイトをご確認ください。

「for」コマンド