GNU/Linux >> Znalost Linux >  >> Linux

Najděte a odstraňte všechny adresáře s názvem test v linuxu

xargs dělá všechna kouzla:

find . -name test -type d -print0|xargs -0 rm -r --

xargs provede příkaz předaný jako parametry s argumenty předanými do stdin.

Toto používá rm -r smazat adresář a všechny jeho potomky.

-- označuje konec argumentů, aby se zabránilo cestě začínající - aby nebyl považován za argument.

-print0 říká find vytisknout \0 znaky místo nových řádků; a -0 říká xargs zacházet pouze s \0 jako oddělovač argumentů.

Toto je volání rm s mnoha adresáři najednou, čímž se vyhnete režii volání rm samostatně pro každý adresář.

Alternativně find může také spustit příkaz pro každou vybranou soubor:

find . -name test -type d -exec rm -r {} \;

A tento s lepším výkonem, protože bude volat rm s více adresáři najednou :

find . -name test -type d -exec rm -r {} +

(Všimněte si + na konci; toto je ekvivalentní xargs řešení.)


find /path/to/dir -name "test" -type d -delete
  • -name: hledá předané jméno. Můžete použít -regex pro poskytování jmen na základě regulárních výrazů

  • -type: hledá typy souborů. d hledá pouze adresáře

  • -smazat: akce, která smaže nalezený seznam.

Alternativně:

find /path/to/dir -name "test" -type d -exec rm -rf {} \;

Jak uvádíJ.F. Sebastiana uvedeno v komentářích:

Mohli byste použít + místo \; pro předání více než jednoho adresáře najednou.


ještě další způsob, jak to udělat, je

find . -name test -exec rm -R "{}" \;

Užitečný odkaz při hledání:http://www.softpanorama.info/Tools/Find/using_exec_option_and_xargs_in_find.shtml


Linux
  1. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  2. Jak najít všechny řídké soubory v Linuxu

  3. Jak najít a odstranit prázdné adresáře a soubory v Linuxu

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

  2. Průvodce linuxovým příkazem „Najít“.

  3. Jak mohu rekurzivně odstranit všechny prázdné soubory a adresáře v Linuxu?

  1. Najděte soubory a adresáře v Linuxu jako profík

  2. Najděte největší soubory a adresáře v Linuxu

  3. Linux Odstraňte soubory a adresáře