我的意思是获取完整目录路径的最后一部分,当它来自cd
时,它与for
一起使用,并全部设置在一行中。
来自cd
的路径类似于C:\a\b\c\d\
。
后面的反斜杠使事情复杂化。
cd
),This只能用于一行。
This对于尾部反斜杠是可以的,但不能用于一行。
的输出
> FOR %%a IN (`cd`) DO echo %%~pa
是\a\b\c\d\
和
> FOR %%a IN (`cd`) DO echo %%~na
是`cd`
(我希望这里是一个空字符串)。
我想我应该将此与set MYDIR1=%MYDIR:~0,-1%
之类的语法和一行command1 && command 2
之类的多个命令结合使用。
目标一班轮将是
像
FOR %%a IN (`cd`) DO set MYDIR1=%MYDIR:~0,-1% && echo %%~nMYDIR1
,也许使用tokens
和/或delims
,但我无法使其正常工作。
答案 0 :(得分:1)
要检索当前文件夹的信息
for %%a in (".") do echo %%~nxa
使用带有或不带有反斜杠结尾的变量检索信息
for %%a in ("%cd%\.") do echo %%~nxa
但是请注意,在两种情况下,驱动器的根文件夹都没有名称和扩展名。
答案 1 :(得分:0)
使用在dostips.com上发现的技术的另一种选择
set "last=%cd:\=" & set "last=%"
echo %last%