2016-10-24 4 views
0

コマンドライン引数から取得したパスを編集し、最後のサブディレクトリを削除するにはどうすればよいですか?バッチファイルのサブパスを削除するには?

C:\ユーザーはアガ\デスクトップ\何か

を\と私は唯一 「C:\ユーザーはアガ\デスクトップ\」を使用したい私のバッチファイルで 一部を私は、引数と私のバッチファイルを実行します。

+1

1つ上の階層(すなわち親)を指し示すパスに '\ ..'を追加...これを解決するには 'for %% P in(" C:\ Users " \ Aga \ Desktop \ something \ .. ")echo echo %%〜fP' ... – aschipfl

+1

また見てください:http://stackoverflow.com/questions/14070252/batch-file-going-back-two-steps-in -a-directory-path – Fusseldieb

答えて

1

バッチファイルの最初の行としてこれを追加します。

@If Not "%~dp1"=="" @(Set "Parent=%~dp1"&Call Set "Parent=%%Parent:~,-1%%") 

その後、必要に応じて、スクリプト全体%の親%を使用し、場合(%親%がツリーまで次のディレクトリになります入力はファイルだった場合はディレクトリまたはコンテナフォルダでした)

関連する問題