27

\文字列(パスを持つ)を分割し、最後のフォルダー名を変数に取りたいと思います。助けてください。


mypath=D:\FOLDER1\FOLDER2\FOLDER3\

変数に FOLDER3 が必要です。

最後の文字がそうでない場合に機能する以下のコマンドを試しました\

for %f in (C:\FOLDER1\FOLDER2\FOLDER3) do set myfolder=%~nxf

最後の文字が\

また、変数が次のように使用されている場合も機能しません: for %f in (%mypath%) do set myfolder=%~nxf

4

7 に答える 7

33
@echo off

set MYDIR=C:\FOLDER1\FOLDER2\FOLDER3\
set MYDIR1=%MYDIR:~0,-1%

for %%f in (%MYDIR1%) do set myfolder=%%~nxf
echo %myfolder%

出力

FOLDER3
于 2013-06-24T16:02:38.843 に答える
21

試す:

for %f in (C:\FOLDER1\FOLDER2\FOLDER3\.) do set myfolder=%~nxf

も機能します:

for %f in (C:\FOLDER1\FOLDER2\FOLDER3.) do set myfolder=%~nxf
于 2013-06-24T16:10:00.503 に答える