So drucken Sie den Verzeichnisbaum im Terminal

130

Mit welchem ​​Befehl kann der Verzeichnisbaum im Terminalemulator gezeichnet werden?

Bildbeschreibung hier eingeben

Maythux
quelle

Antworten:

175

Mit können Sie treeden Verzeichnisbaum im Terminal ausdrucken. Installation treevom Terminal,

sudo apt-get install tree

Verwenden Sie, um die Verzeichnisstruktur anzuzeigen

tree /path/to/folder

Oder navigieren Sie zu einem Verzeichnis und verwenden Sie einfach

tree

Es hat auch einige erweiterte Optionen. Sie können Eigentümer sehen username, groupname, Datum der letzten Änderung einer Datei / Ordner und so weiter verwendet tree. Es unterstützt Verzeichnisfarben von, lsso dass Sie farbige Ausgaben sehen können.

Sehen Sie man treefür mehr.

souravc
quelle
6
Wenn Sie nur Verzeichnisse -dstrukturieren möchten, verwenden Sie switch.
Souravc
sauberes und einfaches Werkzeug
Zhihong
3
oder wenn du brew unter OSX verwendest. "brew install tree"
AshHimself
Ich suchte, wie es auf Win7 + cmder zu tun ist: treefunktioniert gut.
Benj
@AshHimself yep hat mich geschlagen. ;)
Jamescampbell
46

Sie können dies einfach mit dem folgenden Befehl tun:

find . -type d | sed -e "s/[^-][^\/]*\//  |/g" -e "s/|\([^ ]\)/|-\1/"

Dieser Befehl sucht rekursiv nach Verzeichnissen im übergeordneten Verzeichnis und zeichnet dann den Baum der gefundenen Verzeichnisse.

Sie können auch Folgendes versuchen, um auch alle Dateien einzuschließen.

find | sed 's|[^/]*/|- |g'
Maythux
quelle
7
Bitte teilen Sie und erklären Sie den obigen Befehl für mich.
Avinash Raj
3
@AvinashRaj Buddy, die Gesamtheit des Befehls ist klar, wenn Sie mehr über sed erfahren möchten, lesen Sie bitte einige Tutorials oder googeln Sie es. Es ist wirklich schwer, alles hier zu erklären!
Maythux
2
Maythux, Sie haben Recht, wenn Sie sed verstehen, dann ist Ihr Skript klar, aber lassen Sie sich nicht täuschen. Es ist kaum intuitiv - was meiner Meinung nach der Geist von Avinash Rajs Kommentar ist.
aaaaaa
Was muss ich ändern, um versteckte Verzeichnisse zu ignorieren?
Cadams
1
Wie verlasse ich ein bestimmtes Verzeichnis?
Deepak Dholiyan
14

Es gibt ein Programm, treedas Verzeichnisinhalte in einer Baumstruktur auflistet.

Ich denke, es ist in den Repositories (oder sogar installiert)

sudo apt install tree

tree -d /path/to/directory

Überprüfen Sie diesen Link für mehr.

mr2k
quelle