ホーム > コマンドプロンプト・バッチファイル リファレンス
Windowsのバッチで、フルパスからフォルダー名を取得する方法を解説します。
フォルダー名を取得する
フルパスからフォルダー名を取得するバッチファイルです。
@echo off rem フォルダ名を取得するパス set folderPath=C:\ws\test rem フォルダ名を取得 for /f %%a in ("%folderPath%") do ( set folderName=%%~na ) rem フォルダ名を表示 echo %folderName% pause
上記バッチファイルの実行結果です。
test 続行するには何かキーを押してください . . .
注意事項
本バッチ使用時の注意事項です。
取得対象にファイルを指定した場合
パス(変数:folderPath)にファイルを指定した場合は、以下のようにファイル名から拡張子を除いた文字列が取得されます。
例えば、4行目を「set folderPath=C:\ws\test\sample.txt」とした場合、
「sample」が取得されます。
対処方法としては、事前にパスがファイルかフォルダかを判定すれば良いでしょう。
ここでは割愛しますが、必要であれば、以下を参考にして下さい。
その他、バッチの様々なテクニックは以下にまとめています。
リンク
コメント