Windows“树”命令随机排序

Bar*_*erg 4 windows command-line cmd.exe

当我tree /a /f > output.txt在 Windows 的 cmd 中运行时,我得到了一个格式很好的目录结构。但是目录列表没有任何特定的顺序。如何让树按字母顺序对文件夹和文件进行排序?

注意:我需要将输出格式化为层次结构,因此使用dir可能还不够。我可能需要使用tree.

摘录自 tree 的输出

+---HCM Documents
|   +---Interfaces
|   +---Process Flows
|   +---Workshops
|   |   \---Overviews
|   +---Approvals
|   +---Requirements
|   \---Misc
+---Testing Documents
+---Communications
|   +---Statuses 
|   +---Meeting Minutes 
+---Finance Documents
|   +---Taxes
|   +---General Ledger
|   +---Business
|   +---Process Flows
|   +---Purchases
|   \---Workshops
+---Unfiled
+---Infrastructure Documents
+---Financials
|   +---Issue and Risk Log
|   +---Timelines
|   +---Templates
|   \---Decisions Log
Run Code Online (Sandbox Code Playgroud)

请注意,文件夹名称不是按字母顺序排列的。它们也不是按照修改日期或大小的顺序,或者我能想到的任何其他顺序。

此外,这是我在dir未指定排序顺序的情况下运行时得到的默认顺序。

这些文档是通过网络驱动器访问的,但我不明白为什么这会有所作为。(虽然当我在本地文件夹上运行 tree 时,它​​们似乎是按字母顺序排列的。也许这实际上是一个因素?)

Rik*_*Rik 7

Tree是一个非常简单的程序,它循环遍历所有目录(如果指定了文件)。它不做缓冲。您可以看到这一点,因为它直接在屏幕上构建目录树(如果未重定向输出)。对于很多目录,这很慢,并且立即开始输出。

因为tree不会一次读取所有目录,所以不能进行排序。所以它依赖于文件系统来按顺序显示目录。如果文件系统不这样做,tree将不会被命令。

如果你想要一个有序的列表,你将不得不寻找一个可以一次读取所有目录和文件的实用程序,然后呈现一个有序的树状视图。