我有以下命令将遍历特定位置的所有子目录并输出完整路径:
for /d %i in ("E:\Test\*") do echo %i
会给我:
E:\Test\One
E:\Test\Two
但是我如何获得完整路径和目录名称,所以do命令可能是这样的:
echo %i - %j
输出可能是这样的:
E:\Test\One - One
E:\Test\Two - Two
提前致谢!
答案 0 :(得分:4)
以下命令语法只能用于返回完整路径或目录名称:
%~fI - expands %I to a fully qualified path name
%~nI - expands %I to a file name only
使用您的示例,以下命令将以您指定的格式列出目录:
for /d %i in ("E:\Test*") do echo %~fi - %~ni
答案 1 :(得分:0)
您可以使用“%~ni”。这是一个增强的替换,它将返回路径的文件名(或者更准确地说,是最后一部分,在您的情况下是目录名称):
for /d %i in ("E:\Test\*") do echo %i - %~ni