Excluindo alguma extensão com Bash (rapidamente)

3

Eu vi outros tópicos sobre a exclusão de uma determinada extensão em um diretório. No entanto, quando eu tento, parece funcionar, mas demora muito tempo para passar pelos diretórios e dizer "Permissão negada" nos diretórios do sistema. Tudo que eu quero é um script bash que passe por todo o computador, ou parte dele, e exclua uma certa extensão. Se o python for mais rápido, tudo bem.

    
por user1920468 21.12.2012 / 03:42

2 respostas

2

Você poderia usar apenas acho eu acho.

find / -name "*.myextension" -exec rm {} \;

Mas, é claro, pesquisar um disco rígido inteiro (ou partição ..) de / é uma tarefa longa, e você terá erros de permissão negada contanto que não esteja executando isso como raiz.

    
por 21.12.2012 / 03:45
1

usando xargs, supondo que você tenha o GNU find e xargs:

find / -name \*.myextension -print0 | xargs -0 rm

Esse método usa o caractere nulo %code% como o separador entre nomes de arquivos: como nova linha é um caractere legal em um nome de arquivo, a leitura da saída do arquivo por linha não é 100% segura.

    
por 21.12.2012 / 19:18

Tags