Kako rekurzivno pretraživati i uklanjati direktorije na Linuxu


U jednom od naših prethodnih članaka, objasnili smo kako pronaći glavne direktorije i datoteke koje zauzimaju najviše diskovnog prostora u sustavu datoteka u Linuxu. Ako primijetite da takvi direktoriji više ne sadrže važne datoteke i poddirektorije (kao što su stare sigurnosne kopije, preuzimanja itd.), tada ih možete izbrisati kako biste oslobodili prostor na disku.

Pročitajte također: 10 korisnih du (upotreba diska) naredbi za pronalaženje upotrebe diska za datoteke i direktorije

Ovaj kratki vodič opisuje kako rekurzivno pronaći i izbrisati direktorije u sustavu datoteka Linuxa.

Da biste postigli gornju svrhu, možete upotrijebiti naredbu find zajedno s naredbom rm koristeći donju sintaksu. Ovdje znak + na kraju omogućuje istovremeno čitanje više direktorija.

find /start/search/from/this/dir -name "dirname-to-delete" -type d -exec /bin/rm -rf {} + 

Pažnja: morate pažljivo koristiti rm naredbu jer je to jedna od najopasnijih naredbi za korištenje u Linuxu: možete slučajno izbrisati kritični sustav imenika, što je rezultiralo kvarom sustava.

U donjem primjeru tražit ćemo direktorij pod nazivom files_2008 i brisati ga rekurzivno:

$find ~/Downloads/software -name "files_2008" -type d -exec /bin/rm -rf {} + 

Također možete koristiti find i xargs; u sljedećoj sintaksi, radnja -print0 omogućuje ispis cijele staze direktorija na standardnom izlazu, nakon čega slijedi nulti znak:

find /start/search/from/this/dir -name "dirname-to-delete" -type d -print0 | xargs -0 /bin/rm -rf "{}"

Koristeći isti gornji primjer, imamo:

find ~/Downloads/software -name "files_2008" -type d -print0 | xargs -0 /bin/rm -rf "{}"

Na kraju, ali ne manje važno, ako ste zabrinuti za sigurnost svojih podataka, možda biste trebali naučiti 3 načina trajnog i sigurnog brisanja 'Datoteka i direktorija' u Linuxu.

Ne zaboravite pročitati više korisnih članaka o upravljanju datotekama i direktorijima u Linuxu:

  1. fdupes – Alat naredbenog retka za pronalaženje i brisanje dupliciranih datoteka u Linuxu
  2. Kako pronaći i ukloniti duplikate/neželjene datoteke u Linuxu pomoću alata 'FSlint'
  3. 3 načina za brisanje svih datoteka u direktoriju osim jedne ili nekoliko datoteka s ekstenzijama

U ovom smo vam članku pokazali kako rekurzivno pronaći i ukloniti direktorije na Linuxu. Ako imate bilo kakvih pitanja ili dodatnih ideja koje želite dodati ovoj temi, upotrijebite odjeljak za komentare u nastavku.