find -type f ! -name '*.c'
encontra todos os f
ile cujo arquivo name
é não ( !
) terminando em .c
.
Para garantir, use -ok
em vez de -exec
ou execute rm
com a opção -i
:
find -type f ! -name '*.c' -ok rm {} +
find -type f ! -name '*.c' -exec rm -i {} +
Se tiver certeza absoluta de que você pode excluir automaticamente todas as descobertas com -delete
(sempre como a última opção!) em vez de chamar outro programa:
find -type f ! -name '*.c' -delete
Como sempre: Faça backup de seus dados e exclua com cuidado .