Apakah Daftar Hanya Direktori Secara Rekursif di Linux?

Is List Only Directories Recursively Linux



Kata rekursif mengacu pada fakta bahwa perintah sistem operasi Linux atau Unix berhubungan dengan isi folder, dan jika folder memiliki subfolder dan dokumen, instruksi masih berfungsi dengan semua dokumen tersebut (secara rekursif). Mungkin saja direktori anak memiliki kumpulan file dan folder sendiri (misalnya, folder besar), dan seterusnya. Anda akan menggunakan instruksi Linux yang berbeda untuk secara rekursif melintasi setiap folder sebelum membuatnya ke tepi folder yang ditentukan. Pada level itu, instruksi Linux kembali ke turnoff dari pohon dan ulangi proses untuk setiap sub-folder yang ada. Dalam tutorial ini, Anda akan mempelajari semua metode untuk membuat daftar direktori secara rekursif.

Contoh Direktori Daftar Sederhana

Pertama-tama, Anda harus tahu cara membuat daftar semua direktori dari sistem Linux Anda menggunakan perintah daftar sederhana. Buka terminal baris perintah dan coba perintah ls di bawah ini untuk mendaftar hanya direktori. Ini tidak hanya akan mencantumkan direktori tetapi jumlah total sub-folder dan file yang berada di dalamnya. Output menunjukkan folder dengan informasi mengenai pemiliknya, grup, hak baca-tulis, dan tanggal pembuatan folder.







$ ls -l



Untuk membuat daftar semua direktori dan file dalam sistem Linux Anda, Anda harus menggunakan -la alih-alih sederhana -l dalam perintah daftar. Oleh karena itu, jalankan perintah yang diperbarui untuk melakukannya. Outputnya menunjukkan semua file dan folder beserta informasi tambahannya.



$ ls -la





Untuk membuat daftar direktori tanpa informasi tambahan, coba perintah di bawah ini diikuti oleh flag -d.

$ ls –d * /



Anda juga dapat menggunakan perintah yang sama dengan sedikit modifikasi untuk membuat daftar folder beserta informasi tambahannya. Anda hanya perlu menambahkan flag -l dalam perintah ini sebagai berikut:

$ ls –l –d * /

Untuk hanya memeriksa jumlah total file di direktori home tertentu, coba perintah yang disajikan di bawah ini di shell. Anda akan mendapatkan jumlah total file di sistem operasi Linux Anda.

$ ls –l | egrep –v ‘^ d’

Contoh Daftar Direktori Secara Rekursif

Ada berbagai jenis perintah rekursif yang tersedia di Sistem Linux, yang dapat digunakan untuk membuat daftar direktori secara rekursif. Untuk memahami masing-masing secara terpisah, asumsikan Anda memiliki 5 file di direktori Linux bernama Documents.

Daftar Secara Rekursif Menggunakan -lR Flag

Untuk menggunakan flag -lR dalam kueri Anda untuk secara rekursif mendaftar semua direktori sistem Linux Anda adalah metode pertama untuk melakukannya. Setelah eksekusi perintah daftar di bawah ini, itu akan mencantumkan semua folder dan subfoldernya bersama dengan detail bonusnya, seperti yang ditunjukkan pada output.

$ ls -lR

Mari kita daftar secara rekursif semua file atau folder dari beberapa folder atau direktori tertentu dari sistem Linux Anda. Untuk tujuan ini, tambahkan jalur lokasi direktori tertentu untuk mencantumkannya secara rekursif. Kami ingin membuat daftar secara rekursif semua file dan folder dari direktori Dokumen yang berada di direktori home menggunakan perintah di bawah-diperbarui. Outputnya menampilkan semua file dan folder di dalam folder Documents bersama dengan informasi tambahannya.

$ ls –lR / home / aqsayasin / Dokumen /

Daftar Secara Rekursif Menggunakan Perintah Temukan

Jelaskan kepada diri Anda sendiri bahwa tidak semua sistem Linux, misalnya macOS, OS mirip-Unix, memiliki pilihan untuk menggunakan -R untuk membuat daftar direktori. Dalam hal ini, ada perintah lain yang tersedia untuk memenuhi kebutuhan kita yaitu perintah find dan print. Dalam perintah ini, kami akan memberikan path ke folder bersama dengan leverage menggunakan perintah -ls. Ketika -ls digunakan dalam perintah, ini berarti ia juga akan menampilkan informasi tambahan mengenai file dan folder yang ada di direktori tertentu. Coba perintah yang dinyatakan di bawah ini di shell untuk secara rekursif mendaftar semua file dan folder dari direktori Documents.

$ temukan /home/aqsayasin/Documents/ -print -ls

Sekarang, Anda harus mencoba instruksi yang sama di shell dengan sedikit perubahan. Kami akan menghindari penggunaan flag -ls dalam perintah ini untuk berhenti menampilkan informasi tambahan mengenai file. Jalankan kueri yang tercantum di bawah ini di shell, dan Anda akan memiliki output yang ditampilkan.

$ temukan /home/aqsayasin/Documents/ -print

Daftar Secara Rekursif Menggunakan -du Command

Mari kita lihat contoh lain untuk membuat daftar file atau direktori secara rekursif dengan metode baru lainnya. Kali ini, kita akan menggunakan perintah -du untuk mencapai tujuan kita. Perintah ini berisi flag -a di dalamnya. Bersamaan dengan flag, kita juga harus menentukan lokasi direktori. Mari kita jalankan instruksi di bawah ini di shell terminal untuk secara rekursif mendaftar semua folder atau file dari direktori Documents. Output menunjukkan 5 catatan untuk itu, seperti yang ditunjukkan di bawah ini. Anda dapat melihat perintah ini juga menunjukkan jumlah gigitan yang berada di setiap file.

$ du –a / rumah / aqsayasin / Dokumen /

Daftar Secara Rekursif Menggunakan Perintah pohon

Last but not least, kami memiliki metode perintah pohon yang sangat sederhana dan mudah digunakan untuk membuat daftar file atau folder secara rekursif. Kami tidak akan menggunakan flag apa pun dalam perintah ini sejauh ini. Anda harus menentukan lokasi direktori bersama dengan pohon kata kunci. Mari kita lihat contohnya menggunakan perintah yang tercantum di bawah ini. Outputnya menunjukkan output tipe bercabang pohon dari direktori Documents. Ini menunjukkan 0 direktori dan 5 file dalam output.

$ pohon /rumah/aqsayasin/Dokumen/

Mari kita coba perintah pohon yang sama dengan lokasi yang berbeda. Kali ini kami secara rekursif membuat daftar folder direktori 'Home' dari pengguna aqsayasin. Output menunjukkan cabang folder Home memiliki total 14 folder berbeda, sub-folder, dan 5 file.

$pohon /rumah/aqsayasin/

Kesimpulan

Kami telah mencoba semua metode rekursif untuk membuat daftar direktori dan file secara rekursif, misalnya, -lR flag, find and print, du, dan perintah tree