我希望能够使用
tree /F /A > "desktop"\file.txt
命令只输出文本文件。目前,它输出每个文件扩展名。
有没有人知道这么做的简单方法?
答案 0 :(得分:41)
Tree
只接受几个命令行参数:
c:\>Tree /?
Graphically displays the folder structure of a drive or path.
TREE [drive:][path] [/F] [/A]
/F Display the names of the files in each folder.
/A Use ASCII instead of extended characters.
所指示的参数都不是文件掩码或过滤器。
您可以将dir
与正确的开关一起使用,并将输出重定向到文本文件。您将获得文件的完整路径名,但如果需要使用for
循环,您可以在以后的处理中对其进行过滤:
C:\>dir *.txt /s /b > filelist.txt
答案 1 :(得分:11)
使用FINDSTR正则表达式获得所需的TREE输出实际上并不困难。 : - )
tree /f /a | findstr /ri /c:"^[^| ]" /c:"^[| ]*[+\\]" /c:"\.txt$"
答案 2 :(得分:3)
注意:tree
命令不按名称排序输出!
相反,你可以使用这种方法:
dir /b /s /ad /on c:\ > c:\file.txt
结果看起来不太好但是
答案 3 :(得分:1)
另一个简单的选择:转到您要列出的目录,键入CMD以使您位于正确的位置,然后:
tree / a /f>“output.doc”
这会将它放入Word文档中,从那里更容易编辑和格式化。
答案 4 :(得分:-1)
简单。
您只需要像这样导出结果:
tree /a /f >"toto.rtf"
然后使用 Word 打开文件,然后选择MS DOS
convert。