De Shell: Excluir todos os arquivos com apóstrofos
-
19-09-2019 - |
Pergunta
Como faço para excluir todos os arquivos em uma pasta que tem um apóstrofo?
Por exemplo:
Baird / 's Tunnel.jpg
Bach / 's Birds.jpg
Isto não // 't good.png
Eu gostaria todos os arquivos apagados, mas qualquer coisa que não tem um apóstrofo para permanecer intacta, como:
este é good.jpg donotdelete.png
Solução
Em sh você poderia fazer
rm *\'*
Outras dicas
Você pode usar o comando find
:
find . -name "*'*" -delete
Como @Bryan apontou em seu comentário, isso irá apagar todos os arquivos no diretório atual e todos os subdiretórios . Se você não quer descer os diretórios usar:
find . -name "*'*" -maxdepth 1 -delete
que torna find
estadia no diretório atual.
GNU find
find /path/ -type f -name "*[']*" -exec rm {} +;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow