Użyj find w Terminalu, aby usunąć katalogi i pliki o tym samym parametrze wyszukiwania

16

Jeśli wpiszesz następujące w terminalu, usunie wszystkie pliki, które spełniają parametr wyszukiwania:

sudo find . -type f -name "*Xilisoft*" -exec rm -rf {} \;

Następnie, jeśli zacznę od nowa i napiszę go dzamiast f, usunie wszystkie katalogi

sudo find . -type d -name "*Xilisoft*" -exec rm -rf {} \;

Jak mogę to zrobić, aby usunąć typ fi dza jednym zamachem?

Danijel-James W.
źródło

Odpowiedzi:

23

Możesz podać wiele -typeopcji -o, na przykład -type f -o -type dw jednym poleceniu.

find . -name "*Xilisoft*" -type f -o -name "*Xilisoft*" -type d

-odopasowuje wszystkie parametry, więc -namejest podany dwukrotnie w powyższym poleceniu.
Zauważ, że find może usunąć wyniki za pomocą -deletezamiast -exec rm -rf {}.

grg
źródło
3
Nie wiedziałem o tej -deleteopcji, więc jest to mile widziana informacja.
Danijel-James W