
Perintah tree digunakan untuk menampilkan struktur direktori dalam bentuk hierarki pohon (tree view).
Berbeda dengan ls yang hanya menampilkan isi direktori secara datar, tree memperlihatkan hubungan antar-folder dan file secara bertingkat, sehingga lebih mudah memahami struktur proyek atau sistem berkas.
📘 Sintaks Dasar
tree [opsi] [path]
📋 Tabel Atribut / Opsi tree
| Atribut | Keterangan / Fungsi | Contoh Aplikatif |
|---|---|---|
-a
|
Menampilkan semua file termasuk file tersembunyi (. diawali dengan titik).
|
tree -a /etc menampilkan semua konfigurasi termasuk file tersembunyi di /etc.
|
-d
|
Hanya menampilkan direktori saja (tanpa file). | tree -d /var/log untuk melihat struktur folder log tanpa isi file.
|
-L n
|
Membatasi kedalaman pohon hingga level n.
|
tree -L 2 /home hanya menampilkan sampai dua tingkat direktori di /home.
|
-f
|
Menampilkan path lengkap setiap file. | tree -f /usr/bin menampilkan path lengkap seperti /usr/bin/bash.
|
-p
|
Menampilkan permission (izin akses) setiap file. | tree -p /etc untuk melihat mode permission (contoh: [drwxr-xr-x]).
|
-s
|
Menampilkan ukuran file (dalam byte). | tree -s /var/www menampilkan ukuran file di setiap entri.
|
-h
|
Menampilkan ukuran dalam format manusiawi (KB, MB, GB). | tree -h /var/www menampilkan ukuran seperti 4.0K, 2.3M, dst.
|
-C
|
Mengaktifkan pewarnaan (color output) agar lebih mudah dibaca. | tree -C /home dengan warna berbeda untuk folder/file.
|
--noreport
|
Menyembunyikan laporan jumlah file dan direktori di akhir output. | tree --noreport jika ingin tampilan bersih tanpa ringkasan.
|
-I pattern
|
Mengecualikan file atau direktori yang cocok dengan pola tertentu (Ignore). | tree -I "*.log" untuk menyembunyikan semua file log.
|
-P pattern
|
Hanya menampilkan file atau direktori yang cocok dengan pola tertentu (Pattern). | tree -P "*.conf" hanya menampilkan file konfigurasi.
|
-u
|
Menampilkan nama pemilik (user) dari setiap file. | tree -u /etc untuk melihat siapa pemilik masing-masing file.
|
-g
|
Menampilkan nama grup dari setiap file. | tree -g /etc menampilkan grup pemilik file.
|
--du
|
Menampilkan ukuran total direktori (seperti du).
|
tree --du -h /var/www untuk melihat total penggunaan disk.
|
-D
|
Menampilkan waktu terakhir file diubah (timestamp). | tree -D /home/user/Documents untuk melihat tanggal modifikasi.
|
-v
|
Mengurutkan isi direktori secara alami (natural sort). | tree -v menampilkan urutan file yang lebih manusiawi.
|
--charset charset
|
Mengatur karakter encoding untuk output. | tree --charset utf-8 agar simbol garis tampil dengan benar di terminal modern.
|
🧩 Contoh Penggunaan Aplikatif
1. Melihat struktur proyek Python sampai 2 level:
tree -L 2 ~/project/python-app
2. Menampilkan semua file (termasuk hidden) dengan ukuran dan izin:
tree -a -h -p
3. Menganalisis folder web dan ukuran tiap subdirektori:
tree -h --du /var/www/html
4. Melihat struktur file konfigurasi di /etc tapi hanya .conf:
tree -P "*.conf" /etc
5. Menampilkan hanya direktori (tanpa file):
tree -d /opt
💡 Catatan Konseptual
treelebih bersifat visual exploration tool daripada alat analisis file murni sepertifind.- Ia berguna untuk dokumentasi struktur proyek, debugging permission, atau memahami arsitektur sistem file.
- Kelemahannya: tidak efisien untuk direktori yang sangat besar (bisa lambat atau menghasilkan output panjang sekali).