在cmd中使用dir获取没有路径的文件夹名称

Get foldername without path using dir in cmd

通过使用:

dir /s /b /o:n /a:d > foldername.txt

我得到以下输出:

D:\Project\Java\MyName
D:\Project\Java\Object

但我希望输出看起来像这样:

MyName
Object  

输出必须是没有路径的文件夹名称?

FOR 循环具有变量修饰符,因此只能显示文件名和扩展名。请注意,目录可以有扩展名。使用 FOR /? 获取有关变量设置的信息。

FOR /F "usebackq tokens=*" %d IN (`DIR /S /B /A:D /O:N`) DO (ECHO "%~nxd")

或者,将名称不加引号放入文件中:

DEL foldername.txt
FOR /F "usebackq tokens=*" %d IN (`DIR /S /B /A:D /O:N`) DO (ECHO>>foldername.txt %~nxd)

只需使用

DIR D:\Project\Java\ /b

如你所愿