如何在DOS中实现递归目录列表?

我正在寻找DOS中的一个命令或脚本,它可以给我类似于Unix中的ls -R命令的递归目录列表。


当前回答

我喜欢使用下面的方法来获得当前目录的有序列表:

> dir . /s /b sortorder:N

其他回答

Dir /s /b /a:d>output.txt将它移植到一个文本文件

你可以通过输入来获取你想要的参数:

dir /?

完整的列表,请尝试:

dir /s /b /a:d

您可以使用FINDSTR的各种选项来删除不想要的行,如下所示:

DIR /S | FINDSTR "\-" | FINDSTR /VI DIR

正常输出包含如下条目:

28-Aug-14  05:14 PM    <DIR>          .
28-Aug-14  05:14 PM    <DIR>          ..

可以使用FINDSTR提供的各种过滤选项删除这些。您也可以使用优秀的unxutils,但它默认将输出转换为UNIX,因此您不再得到CR+LF;FINDSTR提供了最好的Windows选项。

你可以使用:

dir /s

如果你需要没有所有页眉/页脚信息的列表,试试这个:

dir /s /b

(当然,这将适用于DOS 6和更高版本;在那之前可能有工作,但我不记得了。)

我喜欢使用下面的方法来获得当前目录的有序列表:

> dir . /s /b sortorder:N