Use find no Terminal para remover diretórios e arquivos do mesmo parâmetro de pesquisa

16

Se eu digitar o seguinte no Terminal, ele removerá todos os arquivos que atendem ao parâmetro de pesquisa:

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

Então, se eu começar de novo e digitar, em dvez de fremover todos os diretórios

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

Como faço para remover o tipo fe dde uma só vez?

Danijel-James W
fonte

Respostas:

23

Você pode fornecer várias -typeopções -o, como -type f -o -type dem um único comando.

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

-ocorresponde a todos os parâmetros, portanto, isso -nameé fornecido duas vezes no comando acima.
Observe que find pode excluir os resultados usando em -deletevez de -exec rm -rf {}.

grg
fonte
3
Eu não sabia sobre a -deleteopção, então isso é uma informação bem-vinda.
Danijel-James W