2009-08-31 07:53:25 +0000 2009-08-31 07:53:25 +0000
33
33

列出所有子文件夹中的所有文件

在windows中,有没有什么方法可以得到一个文件夹中所有文件的列表,包括所有子文件夹内的所有文件?

答案 (6)

37
37
37
2009-08-31 07:56:40 +0000

以递归方式列出所有文件

C:`以递归方式列出所有文件

C:/>dir /s

将它们保存到一个文件

C:`以递归方式列出所有文件

C:`以递归方式列出所有文件

C:/>dir /s

将它们保存到一个文件

C:/>dir /s /b/>filelist.txt

每次查看一页

C:`以递归方式列出所有文件

C:`以递归方式列出所有文件

C:/>dir /s

将它们保存到一个文件

C:`以递归方式列出所有文件

C:`以递归方式列出所有文件

C:/>dir /s

将它们保存到一个文件

C:/>dir /s /b/>filelist.txt

每次查看一页

C:/>dir /s | 更多

15
15
15
2009-08-31 07:57:48 +0000

试试 tree /f。这应该会输出整个结构。

5
5
5
2009-08-31 08:11:17 +0000

你将得到 UnixUtils at sourceforge ,这将给你 find.exe

然后,你可以执行以下操作来获取所有文件的文件夹路径列表。

cd Path\to\folder
find.exe . -type f

还有其他形式的Unix命令可能对你有用。
与原生的dirtree命令相比,输出的文件更容易搜索。


根据 Johannes 的输入进行更新。
cmd.exe shell中,

dir /b /s

对于Widows格式的递归列表 相当有效(所以你看到的是 “C:你将得到 [ UnixUtils at sourceforge ]0x3&,这将给你 [find.exe` ]0x3&。

然后,你可以执行以下操作来获取所有文件的文件夹路径列表。

cd Path\to\folder
find.exe . -type f

还有其他形式的Unix命令可能对你有用。
与原生的dirtree命令相比,输出的文件更容易搜索。


根据 Johannes 的输入进行更新。
cmd.exe shell中,

dir /b /s

对于Widows格式的递归列表 相当有效(所以你看到的是 ”“和反斜线 ”你将得到 [ UnixUtils at sourceforge ]0x3&,这将给你 [find.exe` ]0x3&。

然后,你可以执行以下操作来获取所有文件的文件夹路径列表。

cd Path\to\folder
find.exe . -type f

还有其他形式的Unix命令可能对你有用。
与原生的dirtree命令相比,输出的文件更容易搜索。


根据 Johannes 的输入进行更新。
cmd.exe shell中,

dir /b /s

对于Widows格式的递归列表 相当有效(所以你看到的是 “C:你将得到 [ UnixUtils at sourceforge ]0x3&,这将给你 [find.exe` ]0x3&。

然后,你可以执行以下操作来获取所有文件的文件夹路径列表。

cd Path\to\folder
find.exe . -type f

还有其他形式的Unix命令可能对你有用。
与原生的dirtree命令相比,输出的文件更容易搜索。


根据 Johannes 的输入进行更新。
cmd.exe shell中,

dir /b /s

对于Widows格式的递归列表 相当有效(所以你看到的是 ”“和反斜线 ”“)。
我完全没有注意到\b的答案中的 ”Nifle“! (现在+1)。

2
2
2
2009-08-31 10:02:20 +0000

为什么这么复杂?按Windowskey+F启动Windows中的 “文件搜索"。在左侧,进入 "查找",选择底部的 "浏览… "选项。选择你要搜索的(子)文件夹。输入”*“ 在 "全部或部分文件名 "编辑框中输入 "文件名"(不含引号),然后开始搜索。当你在一个有大量数据的大磁盘上搜索时,喝杯咖啡吧,就等着这个基于探索者的搜索引擎向你展示一个完整的列表。如果需要的话,你可以搜索它,直接打开文件,甚至可以缩小搜索范围。

为什么人们忘记了Windows的这种默认搜索行为?

1
1
1
2017-10-05 01:45:31 +0000

我发现这个批处理文件每一个有用

DragDropListFile.bat

@ECHO OFF
SET targetPath="%~1"
SET ToolPath=%~dp0

dir %targetPath% /b /s /a-d > "%ToolPath%list.txt"

使用方法。只要把文件夹拖到DragDropListFile.bat文件上,然后创建一个叫list.txt的文件,里面有你想要的东西。

如果你不喜欢拖放,可以试试这个批处理文件

ListFile.bat

ECHO OFF

SET crtPath=%~dp0

dir "%crtPath%" /b /s /a-d > list.txt

用法:将文件ListFile.bat放在你要列出文件的文件夹中,然后运行文件ListFile.bat,然后就会创建一个名为list.txt的文件,里面包含你想要的内容。

0
0
0
2017-08-30 08:11:03 +0000

dir /s /w >files.txt会让你得到大部分的方法。它将保留扩展名。然后在文本编辑器中打开files.txt,要么

  • 将所有的行进行排序,并删除多余的
  • 或者用查找和替换操作或2.
  • 在Notepad++中,^ +\d+ File.+\r\n\r\n Dir.+\r\n\r\n这个gex为我摆脱了各个文件夹文件列表之间的空白和文件夹细节。
  • 然后只需修剪文本文件的顶部和尾部。