Vyhledávání na webu

Jak vyhledávat a odstraňovat adresáře rekurzivně v systému Linux


V jednom z našich předchozích článků jsme vysvětlili, jak zjistit nejvyšší adresáře a soubory, které zabírají nejvíce místa na disku na souborovém systému v Linuxu. Pokud si všimnete, že tyto adresáře již neobsahují důležité soubory a podadresáře (jako jsou staré zálohy, stažené soubory atd..), můžete je odstranit, abyste uvolnili místo na disku.

Přečtěte si také: 10 užitečných příkazů du (používání disku) ke zjištění využití disku u souborů a adresářů

Tento krátký tutoriál popisuje, jak najít a odstranit adresáře rekurzivně v systému souborů Linux.

K dosažení výše uvedeného účelu můžete použít příkaz find společně s příkazem rm pomocí syntaxe níže. Zde znak + na konci umožňuje současné čtení více adresářů.

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

Pozor: příkaz rm musíte používat opatrně, protože je to jeden z nejnebezpečnějších příkazů pro použití v Linuxu: můžete nechtěně smazat kritický systém adresářů, což má za následek selhání systému.

V níže uvedeném příkladu vyhledáme adresář s názvem files_2008 a rekurzivně jej odstraníme:

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

Můžete také použít najít a xargs; v následující syntaxi akce -print0 umožňuje tisk celé cesty k adresáři na standardní výstup následovaný znakem null:

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

Pomocí stejného příkladu výše máme:

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

V neposlední řadě, pokud máte obavy o bezpečnost svých dat, možná se budete chtít naučit 3 způsoby, jak trvale a bezpečně smazat „Soubory a adresáře“ v Linuxu.

Nezapomeňte si přečíst další užitečné články o správě souborů a adresářů v Linuxu:

  1. fdupes – Nástroj příkazového řádku pro vyhledání a odstranění duplicitních souborů v Linuxu
  2. Jak najít a odstranit duplicitní/nežádoucí soubory v Linuxu pomocí nástroje „FSlint“.
  3. 3 způsoby, jak odstranit všechny soubory v adresáři kromě jednoho nebo několika souborů s příponami

V tomto článku jsme vám ukázali, jak najít a odstranit adresáře rekurzivně v Linuxu. Pokud máte nějaké dotazy nebo další nápady, které chcete přidat k tomuto tématu, použijte sekci komentářů níže.