Используйте find в терминале, чтобы удалить каталоги и файлы с тем же параметром поиска


16

Если я введу следующее в Терминал, он удалит все файлы, которые соответствуют параметру поиска:

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

Тогда, если я начну снова и наберу его dвместо, fон удалит все каталоги

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

Как мне заставить его удалить тип fи dодним махом?

Ответы:


23

Вы можете предоставить несколько -typeопций -o, например, -type f -o -type dв одной команде.

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

-oсоответствует всем параметрам, поэтому -nameв приведенной выше команде указывается дважды.
Обратите внимание, что find может удалить результаты, используя -deleteвместо -exec rm -rf {}.


3
Я не знал об этом -deleteварианте, так что это полезная информация.
Даниэль-Джеймс W
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.