Cara mencetak pohon direktori di terminal

131

Apa perintah yang dapat digunakan untuk menggambar pohon direktori di dalam terminal emulator?

masukkan deskripsi gambar di sini

Maythux
sumber

Jawaban:

176

Anda dapat menggunakan treeuntuk mencetak pohon direktori di terminal. Instal treedari terminal,

sudo apt-get install tree

Untuk melihat pohon direktori, gunakan

tree /path/to/folder

Atau arahkan ke direktori dan gunakan saja

tree

Ini memiliki beberapa opsi lanjutan juga. Anda dapat melihat pemilik username, groupname, tanggal modifikasi terakhir dari sebuah file / folder dan sebagainya menggunakan tree. Ini mendukung warna direktori lssehingga Anda dapat melihat keluaran berwarna.

Lihat man treelebih lanjut.

souravc
sumber
6
Jika Anda ingin membuat pohon hanya direktori gunakan -dswitch.
souravc
alat yang bersih dan mudah
zhihong
3
atau jika Anda menggunakan minuman di OSX. "brew install tree"
AshHimself
Saya sedang mencari cara melakukannya di Win7 + cmder: treeberfungsi dengan baik.
Benj
@AshHimself, ya, kalahkan saya. ;)
jamescampbell
46

Anda dapat melakukannya dengan mudah dengan perintah berikut:

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

Perintah ini akan mencari secara rekursif direktori di dalam direktori induk dan kemudian menggambar pohon direktori yang didirikan.

Anda juga dapat mencoba yang berikut untuk memasukkan semua file juga.

find | sed 's|[^/]*/|- |g'
Maythux
sumber
7
Pisahkan dan jelaskan perintah di atas untuk saya.
Avinash Raj
3
@AvinashRaj Sobat keseluruhan perintah jelas jika Anda ingin mempelajari lebih lanjut tentang sed silakan merujuk ke beberapa tutorial atau google itu. Sangat sulit untuk menjelaskan semuanya di sini!
Maythux
2
Maythux, Anda benar bahwa jika Anda memahami sed maka skrip Anda jelas, tetapi jangan tertipu dengan berpikir sed / regex sama sekali bukan bahasa samar yang telah Anda pelajari selama bertahun-tahun. Ini hampir tidak intuitif - yang saya pikir adalah semangat komentar Avinash Raj.
aaaaaa
Apa yang perlu saya ubah untuk mengabaikan direktori tersembunyi?
cadams
1
bagaimana cara meninggalkan direktori tertentu?
Deepak Dholiyan
14

Ada program yang disebut treedaftar isi direktori dalam struktur pohon.

Saya pikir itu dalam repositori (atau bahkan diinstal)

sudo apt install tree

tree -d /path/to/directory

Periksa tautan ini untuk informasi lebih lanjut.

mr2k
sumber