如何获取按文件夹名称sorting的子文件夹及其文件的列表

我能否使用dir命令行来获取按文件夹名称sorting的子文件夹及其文件的列表,而不仅仅是文件名?

运用

dir / s / b / o:gn> f.txt

我首先得到所有的子文件夹,然后只有所有的子文件,例如:

  d:\root0\root1\folderA d:\root0\root1\folderB d:\root0\root1\file00.txt d:\root0\root1\file01.txt d:\root0\root1\folderA\fileA00.txt d:\root0\root1\folderA\fileA01.txt d:\root0\root1\folderB\fileB00.txt d:\root0\root1\folderB\fileB01.txt 

但是我想要得到 –

 d:\root0\root1\file00.txt d:\root0\root1\file01.txt d:\root0\root1\folderA d:\root0\root1\folderA\fileA00.txt d:\root0\root1\folderA\fileA01.txt d:\root0\root1\folderB d:\root0\root1\folderB\fileB00.txt d:\root0\root1\folderB\fileB01.txt 

[“file00.txt”和“file01.txt”也可以在列表的最后]

谢谢,

Atara

如何使用sort

 dir /b /s | sort 

这是我testing的一个例子:


dir /s /b /o:gn

 d:\root0 d:\root0\root1 d:\root0\root1\folderA d:\root0\root1\folderB d:\root0\root1\file00.txt d:\root0\root1\file01.txt d:\root0\root1\folderA\fileA00.txt d:\root0\root1\folderA\fileA01.txt d:\root0\root1\folderB\fileB00.txt d:\root0\root1\folderB\fileB01.txt 

dir /s /b | sort

 d:\root0 d:\root0\root1 d:\root0\root1\file00.txt d:\root0\root1\file01.txt d:\root0\root1\folderA d:\root0\root1\folderA\fileA00.txt d:\root0\root1\folderA\fileA01.txt d:\root0\root1\folderB d:\root0\root1\folderB\fileB00.txt d:\root0\root1\folderB\fileB01.txt 

要获取目录,请使用/A:D参数:

 dir /a:d /s /b | sort 

Hej男人,你为什么用这个?

dir / s / b / o:gn> f.txt (错误的一个)

你不知道'/ o'中的'g'是什么吗?

看看这个: http : //www.computerhope.com/dirhlp.htm或dir /? 为dir帮助

你应该使用它来代替:

dir / s / b / o:n> f.txt (正确的一个)

dir /b /ad /s *.*将满足您的要求。

将所有文件和文件夹列表放入文本文件的命令如下:

例如:dir / b / s | sort> ListOfFilesFolders.txt

在命令提示符下,转到想要列表的主目录,然后键入命令树/ f

创build一个vbs文件并复制下面的所有代码。 改变目录位置到任何你想要的地方。

 Dim fso Dim ObjOutFile Set fso = CreateObject("Scripting.FileSystemObject") Set ObjOutFile = fso.CreateTextFile("OutputFiles.csv") ObjOutFile.WriteLine("Type,File Name,File Path") GetFiles("YOUR LOCATION") ObjOutFile.Close WScript.Echo("Completed") Function GetFiles(FolderName) On Error Resume Next Dim ObjFolder Dim ObjSubFolders Dim ObjSubFolder Dim ObjFiles Dim ObjFile Set ObjFolder = fso.GetFolder(FolderName) Set ObjFiles = ObjFolder.Files For Each ObjFile In ObjFiles ObjOutFile.WriteLine("File," & ObjFile.Name & "," & ObjFile.Path) Next Set ObjSubFolders = ObjFolder.SubFolders For Each ObjFolder In ObjSubFolders ObjOutFile.WriteLine("Folder," & ObjFolder.Name & "," & ObjFolder.Path) GetFiles(ObjFolder.Path) Next End Function 

将代码保存为vbs并运行它。 你会在那个目录中得到一个列表