我正在尝试列出目录中的所有文件,然后使用批处理文件将其写入文本文件。我认为它应该像
dir / (some flags here) >> files.txt
将包含类似
的列表a.exe
b.exe
c.exe
等。等
答案 0 :(得分:6)
您必须使用/b
开关(仅写入文件列表,不带标题和其他信息)。
dir /b >> list.txt
然后,如果您需要列出.exe
中的所有c:\windows
个文件,则完整命令为:
dir c:\windows\*.exe /b >> list.txt
请注意,>>
会将追加列表添加到文件中。不要忘记您可以使用多种搜索模式,例如:
dir *.jpg;*.png /b > list.txt
它会将所有.jpg
和.png
文件(只有名称,没有路径或任何其他信息)写入文件list.txt
(如果以前存在,则覆盖文件)
如果您需要排除目录,可以依赖/a
切换(根据属性包含/排除项目)。在您的情况下,您想要排除目录,那么您必须使用-d
:
dir /b /a-d >> list.txt
最后不要忘记dir
可以递归地使用/s
开关(列出与给定目录和所有子目录中的搜索模式匹配的文件)并使用/o
排序选项。有关详细信息,请使用dir /?
。
答案 1 :(得分:3)
你几乎已经把它弄下来了。 如果您只想列出该目录中的文件,那么
dir /A-D >> somefile.txt
OR
dir /A-D > somefile.txt
dir /
>>
追加 >
创建新的或覆盖现有的
dir / A-D / ON> somefile.txt
这将按名称排序。
答案 2 :(得分:2)
你去吧
dir C:\ /s /b >files.txt
答案 3 :(得分:0)
您还可以将树用于目录树中的递归列表文件
并且要转储到文本文件,您可以使用:
C:\ tree“D:\ my directory”> “D:\ dump file.txt”