Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Is there any good tool that I can use to get a browsable tree-view of the directory structure of a partition? Something like the tree view in the windows explorer. Additionally, I need to be able to export that file-list, so that others can view it without access to the partition.

To clarify, I am not interested in the files themselves. I just need a hierarchical listing of all files. Zipping them all up is not what I want.

share|improve this question
    
This may help: How To Print A Directory Tree From Windows Explorer –  bgvaughan Apr 25 '11 at 19:58
    
If you want, I can write an AutoIt script to export the directory listing into plain-text in whatever style you would like. You could then write a program to parse it back into a directory-view like style. –  Breakthrough Aug 4 '11 at 13:38
    
Related question at Stack Overflow. –  trejder 19 hours ago

10 Answers 10

up vote 38 down vote accepted

Assuming your directory tree is of reasonable size, you could also use the built in tree command, which produces a rather pretty looking directory tree. Unfortunately this prettiness is difficult to get working outside of a cmd instance, so you'll probably want to tell it to just use ascii characters with the /A switch.

Example:

From a small multi-level structure

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

You can then redirect this to a file using a command like:

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

Where the directory path is optional, but useful if you want to tree something which isn't the current working directory.

share|improve this answer
1  
You can also pipe this output to a text file by doing: tree E: \A \F > output.txt –  xan Aug 4 '11 at 13:35
    
@xan; Whoops, that was the important bit of the answer and I completely forgot about it! Thanks –  Phoshi Aug 4 '11 at 13:37
    
@xan just FYI, you need to use forward-slashes (/) instead of backslashes for command line argument identifiers. Backslashes are directory tree separators in Windows systems. –  Breakthrough Aug 4 '11 at 13:39
1  
@Breakthrough: Whoops - yes, tree E: /A /F > output.txt - mistyped my slashes! –  xan Aug 4 '11 at 15:32
    
There seems to be a (small) limit to how much this can print. It stops part way through my files. –  Bob Denny Feb 12 at 1:08

If you want to use the code is very simple and the output is nice.

Code:

Get-ChildItem | tree

With

Get-ChildItem | tree > foo.txt

you can pipe the output to a Textfile.

Example Output:

Auflistung der Ordnerpfade für Volume System
Volumeseriennummer : 48E9-F43B
C:.
├───Contacts
├───Desktop
├───Downloads
│   └───Evernote Import
├───Dropbox
│   ├───Apps
│   │   └───iftttcom
│   │       └───getpocketpdf
│   ├───Backup
│   ├───Camera Uploads
│   ├───Development
share|improve this answer

If raw text as the output is fine, then you can run the following from a command prompt:

DIR C:\ /S > output.txt

Where output.txt will be generated in the current working directory, and contain a listing of all files and directories on the C: drive. If you want just a full output of files with their paths, run the following:

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

It would also be a trivial task to write a program to parse the output back into a directory view style program for you to view.

share|improve this answer

Use the following powershell command, also remember that you can export it to Xml, csv or to database. Also I have restricted properties to full name and name, you can use other properties like modified timestamp etc.

Get-ChildItem -Recurse 'Z:\temp' *.xml | Select-Object -Property FullName,name | Export-Csv directory_structure.csv
share|improve this answer

Although this has already been answered, I came looking here for the solution, but didn't find it.

Looking further, I found this : http://gnuwin32.sourceforge.net/packages/tree.htm

With that I can follow the instructions of http://nsaunders.wordpress.com/2010/11/16/dropbox-tip-continued-convert-a-file-tree-to-html/ , and create a HTML tree of my Dropbox public folder, and in that way share a directory tree very easy.

share|improve this answer

You can also put the results directly into the clipboard (in Vista+):

tree | clip
share|improve this answer

You could just use xcopy with the /T and /E option to copy only directories. That would get you a complete and browsable copy of the structure, and answers the first part of your question. Does not let you view files though...

share|improve this answer

You could use an archiving tool, such as WinZIP that can zip an entire directory structure into a single file, that you can, for example, transfer on a network, or put on a USB disk. Some tools will also keep flags such as read-only, archive, etc.

Under Linux, my favorite tool for such action is tar, that will take an entire directory structure into a single file, which I can couple with gzip to actually compress the whole thing.

share|improve this answer

Try this powershell script if you want to list the number of files in each directory from your current location...

$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 }
share|improve this answer

I found the easiest way going to command prompt and entering (in my case I needed the K: directory)

tree K: > tree.doc

I chose a Word document since I needed something user friendly. Just select MS-Dos when opening it in Word and it'll look great.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.