Kako rekurzivno iskati in odstranjevati imenike v Linuxu


V enem od prejšnjih člankov smo razložili, kako ugotoviti najboljše imenike in datoteke, ki v datotečnem sistemu v Linuxu zasedejo največ prostora na disku. Če opazite, da takšni imeniki ne vsebujejo več pomembnih datotek in podimenikov (kot so stare varnostne kopije, prenosi itd.), Jih lahko izbrišete, da sprostite prostor na disku.

Ta kratka vadnica opisuje, kako rekurzivno iskati in brisati imenike v datotečnem sistemu Linux.

Če želite doseči zgornji namen, lahko uporabite ukaz find skupaj z ukazom rm s spodnjo skladnjo. Tukaj znak + na koncu omogoča hkratno branje več imenikov.

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

Pozor: Ukaz rm morate uporabljati previdno, ker je to eden najnevarnejših ukazov za uporabo v Linuxu: lahko pomotoma izbrišete kritične sistemske imenike, kar povzroči okvaro sistema.

V spodnjem primeru bomo iskali imenik files_2008 in ga rekurzivno izbrisali:

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

Uporabite lahko tudi find in xargs; v naslednji sintaksi dejanje -print0 omogoča tiskanje celotne poti imenika na standardni izhod, ki mu sledi ničelni znak:

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

Z istim primerom zgoraj imamo:

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

Nenazadnje, če vas skrbi varnost vaših podatkov, se boste morda želeli naučiti treh načinov trajnega in varnega brisanja »datotek in imenikov« v Linuxu.

Ne pozabite prebrati več uporabnih člankov o upravljanju datotek in imenikov v Linuxu:

  1. fdupes - Orodje ukazne vrstice za iskanje in brisanje podvojenih datotek v Linuxu
  2. Kako poiskati in odstraniti podvojene/neželene datoteke v Linuxu z orodjem 'FSlint'
  3. 3 načini za brisanje vseh datotek v imeniku, razen ene ali nekaj datotek z razširitvami

V tem članku smo vam pokazali, kako rekurzivno najti in odstraniti imenike v Linuxu. Če imate kakršno koli vprašanje ali dodatne ideje, ki jih želite dodati tej temi, uporabite spodnji razdelek za komentarje.