Tente isto:
find . -type f ! -name "*.*" -delete
No entanto, observe que o acima não excluirá arquivos cujo nome termine em .
, por exemplo, foo.
. Para excluí-los também, use isso:
find . -type f ! -name "*.?*" -delete
Eu tenho uma pasta sem cerca de 500 subdiretórios. Há muito lixo a ser encontrado e eu quero limpá-lo.
Eu já excluí certos tipos de arquivos que eu não quero, como imagens, com este comando:
find . -mindepth 1 -iname "*.jpg" -type f -delete
No entanto, agora quero excluir todos os arquivos sem extensão. Arquivos como "Lista de compras" em vez de "Lista de compras.txt"
Eu tentei o seguinte comando, mas não funcionou:
find . -mindepth 1 ! -iname "*.*" -type f -delete
Tente isto:
find . -type f ! -name "*.*" -delete
No entanto, observe que o acima não excluirá arquivos cujo nome termine em .
, por exemplo, foo.
. Para excluí-los também, use isso:
find . -type f ! -name "*.?*" -delete
Você pode usar:
find . -type f ! -name "*.*" -delete
Tags command-line find