Adakah Senarai Hanya Direktori Secara Rekursif di Linux?

Is List Only Directories Recursively Linux



Kata rekursif merujuk pada kenyataan bahawa perintah sistem operasi Linux atau Unix berkaitan dengan isi folder, dan jika folder mempunyai subfolder dan dokumen, arahan masih berfungsi dengan semua dokumen tersebut (secara rekursif). Ada kemungkinan direktori anak mempunyai kumpulan fail dan foldernya sendiri (misalnya, folder besar), seterusnya dan sebagainya. Anda akan menggunakan arahan Linux yang berbeza untuk melintasi setiap folder sebelum membuatnya ke tepi folder yang ditentukan. Pada tahap itu, arahan Linux kembali ke pemutusan pokok dan mengulangi proses untuk sub-folder yang ada. Dalam tutorial ini, anda akan mempelajari semua kaedah untuk menyenaraikan direktori secara berulang.

Contoh Direktori Senarai Ringkas

Pertama sekali, anda mesti tahu bagaimana menyenaraikan semua direktori dari sistem Linux anda menggunakan arahan senarai mudah. Buka terminal baris perintah dan cuba arahan di bawah ini untuk menyenaraikan hanya direktori. Ia tidak hanya akan menyenaraikan direktori tetapi juga jumlah sub-folder dan fail yang terdapat di dalamnya. Keluaran menunjukkan folder dengan maklumat mengenai pemiliknya, kumpulan, hak baca-tulis, dan tarikh penciptaan folder.







$ ls -l



Untuk menyenaraikan semua direktori dan fail dalam sistem Linux anda, anda harus menggunakan -la dan bukannya sederhana -l dalam perintah senarai. Oleh itu, laksanakan perintah yang dikemas kini untuk melakukannya. Hasilnya menunjukkan semua fail dan folder beserta maklumat tambahannya.



$ ls -la





Untuk hanya menyenaraikan direktori tanpa maklumat tambahan, cubalah arahan di bawah ini diikuti oleh flag -d.

$ ls –d * /



Anda juga boleh menggunakan perintah yang sama dengan sedikit pengubahsuaian untuk menyenaraikan folder bersama dengan maklumat tambahan mereka. Anda hanya perlu menambahkan bendera -l dalam arahan ini seperti berikut:

$ ls –l –d * /

Untuk hanya memeriksa jumlah fail dalam direktori utama tertentu, cuba perintah yang ditunjukkan di bawah ini di shell. Anda akan mendapat jumlah fail dalam sistem operasi Linux anda.

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

Contoh Penyenaraian Direktori secara berulang

Terdapat pelbagai jenis perintah rekursif yang tersedia dalam Sistem Linux, yang dapat digunakan untuk menyenaraikan direktori secara berulang. Untuk memahami masing-masing secara berasingan, anggap anda mempunyai 5 fail di direktori Linux anda yang bernama Dokumen.

Senaraikan Secara Berkala Menggunakan -lR Bendera

Untuk menggunakan bendera -lR dalam pertanyaan anda untuk menyenaraikan semua direktori sistem Linux anda secara berulang adalah kaedah pertama untuk melakukannya. Setelah melaksanakan perintah senarai di bawah, ia akan menyenaraikan semua folder dan subfoldernya bersama dengan butiran bonus mereka, seperti yang ditunjukkan dalam output.

$ ls -lR

Mari kita senaraikan secara berkala semua fail atau folder dari beberapa folder atau direktori tertentu dari sistem Linux anda. Untuk tujuan ini, tambahkan lokasi lokasi direktori tertentu untuk menyenaraikannya secara berulang. Kami ingin menyenaraikan semua fail dan folder dari direktori Dokumen yang terdapat di dalam direktori utama menggunakan perintah yang dikemas kini di bawah. Keluaran memaparkan semua fail dan folder di dalam folder Dokumen berserta maklumat tambahannya.

$ ls –lR / rumah / aqsayasin / Dokumen /

Senaraikan Perintah Cari Secara Rekursif

Jelaskan kepada diri anda bahawa tidak semua sistem Linux, misalnya, macOS, OS seperti Unix, mempunyai pilihan untuk menggunakan -R untuk menyenaraikan direktori. Dalam kes itu, ada perintah lain yang tersedia untuk memenuhi keperluan kita iaitu perintah mencari dan mencetak. Dalam perintah ini, kita akan memberikan jalan ke folder bersama dengan pengaruh menggunakan perintah -ls. Apabila -ls digunakan dalam perintah, ini berarti ia juga akan menunjukkan maklumat tambahan mengenai fail dan folder yang tinggal dari direktori tertentu. Cubalah arahan yang dinyatakan di bawah dalam shell untuk menyenaraikan semua fail dan folder direktori Dokumen secara berulang.

$ cari / rumah / aqsayasin / Dokumen / -cetakan -l

Sekarang, anda harus mencuba arahan yang sama di cangkang dengan sedikit perubahan. Kami tidak akan menggunakan bendera -ls dalam perintah ini untuk berhenti menunjukkan maklumat tambahan mengenai fail. Jalankan pertanyaan yang tercantum di bawah di shell, dan anda akan mempunyai output yang ditunjukkan.

$ cari / rumah / aqsayasin / Dokumen / -cetakan

Senaraikan Perintah -du Secara Recursively

Mari kita lihat contoh lain untuk menyenaraikan fail atau direktori secara berkala dengan kaedah baru yang lain. Kali ini, kita akan menggunakan perintah -du untuk mencapai tujuan kita. Perintah ini mengandungi bendera -a di dalamnya. Bersama dengan bendera, kita juga harus menentukan lokasi direktori. Mari kita jalankan arahan di bawah pada shell terminal untuk menyenaraikan semua folder atau fail direktori Dokumen secara berulang. Hasilnya menunjukkan 5 rekod untuknya, seperti yang ditunjukkan di bawah. Anda dapat melihat perintah ini juga menunjukkan jumlah gigitan yang terdapat di setiap fail.

$ du –a / rumah / aqsayasin / Dokumen /

Senaraikan Perintah pokok secara rekursif

Akhir sekali, kami mempunyai kaedah arahan pokok yang sangat mudah dan mudah digunakan untuk menyenaraikan fail atau folder secara berulang. Kami tidak akan menggunakan bendera dalam arahan ini setakat ini. Anda harus menentukan lokasi direktori bersama dengan kata kunci. Mari kita contohnya menggunakan arahan yang disenaraikan di bawah. Output menunjukkan output jenis cabang pokok dari direktori Dokumen. Ini menunjukkan 0 direktori dan 5 fail dalam output.

$ pokok / rumah / aqsayasin / Dokumen /

Mari cuba perintah pokok yang sama dengan lokasi yang berbeza. Kali ini kami secara berulang-ulang menyenaraikan folder direktori 'Home' pengguna aqsayasin. Hasilnya menunjukkan cabang-cabang folder Beranda yang mempunyai 14 folder, sub-folder, dan 5 fail yang berbeza.

$ pokok / rumah / aqsayasin /

Kesimpulannya

Kami telah mencuba semua kaedah rekursif untuk menyenaraikan direktori dan fail secara berulang, mis., Bendera -lR, cari dan cetak, du, dan perintah pokok