Esses comandos não funcionaram porque os padrões de curingas omitem arquivos de ponto (arquivos cujo nome começa com o caractere .
) a menos que o ponto apareça explicitamente no padrão. Portanto, *.un~
corresponde a yourfile.txt.un~
, mas não .myfile.txt.un~
, enquanto .*.un~
corresponde a .myfile.txt.un~
.
Você deve ser capaz de usar find(1)
para isso ( find
de correspondência de caractere curinga não trata especialmente os arquivos de ponto):
find / -name "*.un~" -not -path "~/.tmp/*" -delete
Isso diz ao find para pesquisar /
para todos os arquivos correspondentes a *.un~
que não estão em ~/.tmp
e excluí-los. Se você retirar -delete
, ele exibirá uma lista, para que você possa verificar e certificar-se de que não irá excluir as coisas erradas. Você também pode querer jogar -mount
lá para impedir que ele procure em outros sistemas de arquivos que você montou