2011-03-16 11:31:01 +0000 2011-03-16 11:31:01 +0000
66
66

如何在Windows中导出目录结构?

在Windows资源管理器中,有一个树状视图来查看目录结构的概况。我想把这个结构分享给其他人。

我如何才能获得一个可浏览的树形视图,以查看分区的目录结构,并导出该文件列表,以便其他人可以在不访问分区的情况下查看它?

澄清一下,我对文件本身不感兴趣。我只是需要一个所有文件的分级列表。把它们全部压缩起来不是我想要的。

答案 (12)

86
86
86
2011-08-04 13:22:53 +0000

假设你的目录树是合理的大小,你也可以使用内置的 tree 命令,它可以产生一个相当漂亮的目录树。不幸的是,这种漂亮的外观很难在 cmd 实例之外工作,所以你可能会想让它使用 /A 开关来使用 ascii 字符。

示例:

从一个小的多级结构

+---A
| +---A
| \---B
+---B
| \---A
| \---A
\---C

然后你可以使用一个命令将其重定向到一个文件,比如:

tree /A ["directory path"] > tree.txt

你可以使用一个命令将其重定向到一个文件。

0x1&

其中目录路径是可选的,但如果你想把一些不是当前工作目录的东西树化,就会很有用。

19
19
19
2012-07-17 14:32:54 +0000

如果你想使用 powershell 代码很简单,输出也很好。

代码。

Get-ChildItem | tree

使用

Get-ChildItem | tree > foo.txt

你可以将输出结果用管道传送到一个Textfile。

输出示例:

Auflistung der Ordnerpfade für Volume System
Volumeseriennummer : 48E9-F43B
C:.
├───Contacts
├───Desktop
├───Downloads
│ └───Evernote Import
├───Dropbox
│ ├───Apps
│ │ └───iftttcom
│ │ └───getpocketpdf
│ ├───Backup
│ ├───Camera Uploads
│ ├───Development
10
10
10
2013-12-18 12:25:42 +0000

你也可以直接将结果放入剪贴板(在Vista+中):

tree | clip
```。
9
9
9
2011-08-04 13:33:24 +0000

虽然在这种情况下,你很可能需要TREE命令的输出(例如TREE /F > output.txt),但如果以原始文本作为输出也可以,那么你可以在命令提示符下运行以下内容。

DIR C:\ /S > output.txt

其中output.txt将在当前工作目录下生成,并包含C:驱动器上所有文件和目录的列表。如果你只想输出带有**完整路径的文件,请运行以下命令。

DIR C:\ /B /S > output.txt

写一个程序把输出结果解析成一个目录视图式的程序给你看也是很简单的事情。

7
7
7
2015-06-02 09:13:19 +0000

打开命令提示符窗口–>进入你的目录路径

然后运行下面的命令生成

tree /f /a > tree.doc

上面的命令将使文件夹和文件结构递归并导出为word文档文件。你可以在同一个文件夹中找到创建的 “tree.doc"。

5
5
5
2013-03-06 01:32:14 +0000

使用下面的powershell命令,还记得你可以将其导出为Xml、csv或数据库。另外,我将属性限制为全名和名称,你可以使用其他属性,如修改时间戳等。

Get-ChildItem -Recurse 'Z:\temp' *.xml | Select-Object -Property FullName,name | Export-Csv directory_structure.csv
3
3
3
2015-03-25 21:12:09 +0000

我专门为此创建了一个程序–【目录快照】(https://github.com/jaggi1234/Directory-Snapshot “Directory Snapshot”)。
它循环地遍历一个目录,并将遇到的所有文件和文件夹的名称和大小存储在结构整齐的HTML文件中,这些文件的组织结构与输入目录类似。
换句话说,这可以被认为是 dir /s tree /f 命令的超链接版本。

2
2
2
2014-11-11 18:39:20 +0000

如果你想从你当前的位置列出每个目录中的文件数量,请尝试这个powershell脚本……。

$dirs = Get-ChildItem -recurse | Where{$_.psIsContainer -eq $true} ; ForEach($d in $dirs){ "{0,6} | {1,-1}" -f (Get-ChildItem -path $d.fullname -recurse | where {$_.psIsContainer -ne $true}).count,$d.fullname >> file_counts.txt }
1
1
1
2012-07-17 14:12:20 +0000

虽然这个问题已经有人回答过了,但我还是来这里找解决方法,但没有找到。

进一步寻找,我发现了这个。 http://gnuwin32.sourceforge.net/packages/tree.htm

有了这个,我可以按照 http://nsaunders.wordpress.com/2010/11/16/dropbox-tip-continued-convert-a-file-tree-to-html/ 的说明,创建一个我的 Dropbox 公共文件夹的 HTML 树,这样一来,共享一个目录树就非常容易了。

0
0
0
2011-03-16 12:07:44 +0000

你可以使用 xcopy 和 /T 和 /E 选项只复制目录。这样你就可以得到一个完整的、可浏览的结构副本,并回答了你问题的第一部分。但不能让你查看文件……

0
0
0
2011-03-16 12:18:23 +0000

你可以使用一个归档工具,比如WinZIP,它可以将整个目录结构压缩成一个文件,你可以,比如,在网络上传输,或者放在U盘上。有些工具还会保留只读、归档等标志。

在Linux下,我最喜欢的这种操作工具是tar,它会把整个目录结构变成一个文件,我可以配合gzip来实际压缩整个文件。

-1
-1
-1
2014-05-14 16:40:01 +0000

我发现最简单的方法是进入命令提示符,然后输入(在我的情况下,我需要K:目录)

tree K: > tree.doc

我选择了一个Word文档,因为我需要一些用户友好的东西。在Word中打开时选择MS-Dos就可以了,看起来很不错。