如何通过cmd知道上层文件夹名称

时间:2016-12-23 11:51:29

标签: batch-file cmd

有什么方法可以通过Windows中的cmd知道上层文件夹(目录)的名称是什么?例如,你在C:\ A \ B \ C我需要一个告诉B的命令

2 个答案:

答案 0 :(得分:2)

是的,有 - 使用for循环:

set "FOLDER=C:\A\B\C"

for %%J in ("%FOLDER%") do for %%I in ("%%~dpJ.") do echo(%%~nxI

%%~dpJ扩展为C:\A\B\时,外循环需要上升一级;让我们追加. %%~dpJ.来获取C:\A\B\.,这相当于C:\A\B;最后,需要内部循环来检索引用目录的纯名称,因为%%~nxI返回B

也可以使用一个for循环:

set "FOLDER=C:\A\B\C"

for %%I in ("%FOLDER%\..") do echo(%%~nxI

..表示一级上升,C:\A\B\C\..因此等同于C:\A\B;最后,%%~nxI再次返回B

答案 1 :(得分:2)

替代方案,使用内置的%CD%变量。

从命令提示符:

For %A In ("%CD%\..\.") Do @Echo(%~nxA

从批处理文件:

@For %%A In ("%CD%\..\.") Do @(Echo(%%~nxA&Timeout 5 1>Nul)