Android

Bagaimana untuk menghapuskan (padam) direktori dalam linux

Cara Menghapus Folder Beserta Isinya di Linux

Cara Menghapus Folder Beserta Isinya di Linux

Isi kandungan:

Anonim

Terdapat beberapa cara untuk menghapus direktori dalam sistem Linux. Jika anda menggunakan pengurus fail Desktop seperti Gnome's Files atau Dolphin KDE maka anda boleh memadamkan fail dan direktori menggunakan antara muka pengguna grafik pengurus. Tetapi, jika anda menjalankan pelayan tanpa kepala atau ingin memadam banyak direktori sekaligus pilihan terbaik anda ialah memadam direktori (folder) dari baris arahan.

, kami akan menerangkan bagaimana untuk memadam direktori di Linux menggunakan perintah rmdir , rm dan find .

Sebelum awak bermula

Apabila anda mengalih keluar direktori menggunakan pengurus fail Desktop anda, direktori itu sebenarnya dipindahkan ke Sampah dan boleh dipulihkan dengan mudah.

Berhati-hati apabila mengeluarkan fail atau direktori dari baris arahan, kerana sekali direktori itu dipadam dengan menggunakan arahan menjelaskan ia tidak dapat dipulihkan sepenuhnya.

Pada kebanyakan fail sistem Linux, memadam direktori memerlukan kebenaran menulis pada direktori dan kandungannya. Jika tidak, anda akan mendapat ralat "Operasi tidak dibenarkan".

Nama direktori dengan ruang di dalamnya mesti luput dengan backslash ( / ).

Mengalih keluar Direktori dengan rmdir

rmdir adalah utiliti baris perintah untuk memadam direktori kosong. Ia berguna apabila anda ingin memadamkan direktori hanya jika ia kosong, tanpa perlu memeriksa sama ada direktori itu kosong atau tidak.

Untuk memadam direktori dengan rmdir , ketik perintah yang diikuti dengan nama direktori yang anda ingin alih keluar. Sebagai contoh, untuk memadam direktori bernama dir1 anda akan menaip:

rmdir dir1

Jika direktori tidak kosong, anda akan mendapat ralat berikut:

rmdir: failed to remove 'dir1': No such file or directory

Dalam kes ini, anda perlu menggunakan arahan rm atau secara manual mengeluarkan kandungan direktori sebelum anda boleh memadamkannya.

Mengalih keluar Direktori dengan rm

rm adalah utiliti baris perintah untuk memadam fail dan direktori. Tidak seperti rmdir arahan rm boleh memadam kedua-dua direktori kosong dan tidak kosong.

Secara lalai, apabila digunakan tanpa sebarang pilihan, rm tidak memadam direktori. Untuk memadam direktori kosong, gunakan pilihan -d ( --dir ) dan padam direktori tidak kosong dan semua kandungannya menggunakan pilihan -r (- --recursive atau -R ).

Sebagai contoh untuk memadam direktori bernama dir1 bersama-sama dengan semua kandungannya, anda akan menaip:

rm -r dir1

Sekiranya direktori atau fail dalam direktori ditulis-dilindungi, anda akan diminta untuk mengesahkan penghapusannya. Untuk mengeluarkan direktori tanpa diminta menggunakan pilihan -f :

rm -rf dir1

Untuk mengalih keluar beberapa direktori sekaligus, gunakan arahan rm diikuti dengan nama nama direktori yang dipisahkan oleh ruang. Perintah di bawah akan mengalih keluar setiap direktori yang disenaraikan dan kandungannya:

rm -r dir1 dir2 dir3

Pilihan -i memberitahu rm untuk meminta anda mengesahkan penghapusan setiap subdirektori dan fail. Jika direktori mengandungi banyak fail, ini boleh menjadi sedikit menjengkelkan supaya anda boleh mempertimbangkan menggunakan pilihan -I apa yang akan meminta anda hanya sekali sebelum meneruskan dengan penghapusan.

rm -rI dir1

Untuk mengeluarkan jenis direktori y dan tekan Enter .

rm: remove 1 argument recursively? y

Anda juga boleh menggunakan ekspansi tetap untuk menyesuaikan dan memadam berbilang direktori. Sebagai contoh, untuk mengalih keluar semua direktori peringkat pertama dalam direktori semasa yang berakhir dengan _bak , anda akan menggunakan arahan berikut:

rm -r *_bak

Menggunakan ekspansi secara tetap apabila mengeluarkan direktori mungkin berisiko. Ia disyorkan terlebih dahulu untuk menyenaraikan direktori dengan arahan ls supaya anda dapat melihat apa direktori akan dihapuskan sebelum menjalankan perintah rm .

Mengalih keluar Direktori dengan find

find ialah utiliti baris perintah yang membolehkan anda mencari fail dan direktori berdasarkan ekspresi yang diberikan dan melakukan tindakan pada setiap fail atau direktori yang dipadankan.

Senario yang paling biasa adalah menggunakan perintah find untuk memadam direktori berdasarkan corak. Sebagai contoh, untuk memadam semua direktori yang berakhir dengan _cache dalam direktori kerja semasa anda akan dijalankan:

find. -type d -name '*_cache' -exec rm -r {} +

Mari analisa arahan di atas:

  • /dir - cari secara rekursif dalam direktori kerja semasa ( . ). -type d - mengehadkan carian ke direktori. -name '*_cache' - cari direktori yang berakhir dengan _cache - menjalankan perintah luaran dengan argumen pilihan, dalam kes ini iaitu rm -r . {} + - menambah fail yang terdapat pada akhir arahan rm .

Mengalih keluar semua direktori kosong

Untuk mengalih keluar semua direktori kosong di dalam pokok direktori yang anda akan gunakan:

find /dir -type d -empty -delete

Inilah penjelasan untuk pilihan yang digunakan:

  • /dir - cari secara rekursif di direktori /dir . -type d - mengehadkan carian ke direktori. -empty - menyekat carian hanya untuk direktori kosong. -delete - memadam semua direktori kosong yang terdapat dalam subtree. -delete boleh memadam hanya direktori kosong.

Gunakan pilihan -delete dengan berhati-hati. Barisan arahan cari dinilai sebagai ungkapan dan jika anda menambah pilihan -delete terlebih dahulu, perintah itu akan memadamkan semuanya di bawah titik permulaan yang anda tentukan. Sentiasa gunakan -delete sebagai pilihan terakhir dan sebelum memadamkan, menguji arahan terlebih dahulu tanpa pilihan -delete .

/ bin / rm: Senarai argumen terlalu panjang

Mesej ralat ini muncul apabila anda menggunakan perintah rm untuk mengalih keluar direktori yang mengandungi sejumlah besar fail. Ini berlaku kerana bilangan fail lebih besar daripada had sistem pada saiz hujah arahan baris.

Terdapat beberapa penyelesaian yang berbeza untuk masalah ini. Contohnya, anda boleh cd ke direktori dan secara manual atau menggunakan gelung untuk mengeluarkan sub-direktori satu demi satu.

Penyelesaian yang paling mudah adalah terlebih dahulu untuk memadam semua fail dalam direktori dengan arahan find dan kemudian padam direktori:

find /dir -type f -delete && rm -r /dir

Kesimpulannya

Dengan rm dan find anda boleh memadam direktori berdasarkan kriteria yang berbeza dengan pantas dan cekap.

Memadam direktori adalah proses yang mudah dan mudah tetapi anda perlu berhati-hati untuk tidak memadam data penting.

rm rmdir find terminal