Usando 'find' para busca recursiva e delete

2

Eu quero pesquisar arquivos com nome libre neles & em seguida, exclua-os. Estou meio terminado aqui & Não é possível encontrar uma maneira confiável de excluir arquivos, especialmente quando nomes de arquivos contêm espaços em branco.

find -iname *libre*

isto irá procurar os arquivos, mas digamos que um arquivo seja 'Libre Office Word' agora ele tem espaços em branco, você pode guiar como apagar tais arquivos também?

    
por nightcrawler 26.01.2013 / 06:28

1 resposta

5

Você pode usar a opção -delete se a sua versão do find oferecer suporte ou você pode usar rm nas opções -exec .

find -iname '*libre*' -delete       # GNU find
find -iname '*libre*' -exec rm {} + # POSIX

Note que você deve citar o padrão. Isso impede que o shell o expanda antes de ser passado para o comando find.

    
por 26.01.2013 / 06:41