Remove todos os arquivos recursivamente sem excluir diretórios

9

Eu quero "limpar" todos os arquivos de um diretório, incluindo todos os arquivos em subdiretórios, mas eu quero deixar os subdiretórios no lugar. Meu entendimento de rm -r é que ele também excluirá os próprios subdiretórios.

Eu não quero excluir arquivos ocultos (ponto).

Como isso pode ser feito?

    
por Scott Wilton 30.01.2015 / 15:53

2 respostas

10

Use find para isso:

find . ! -name '.*' ! -type d -exec rm -- {} +
    
por 30.01.2015 / 15:59
0

tente algo como:

find <path> ! -name '.*' -type f -exec rm {} \;
    
por 30.01.2015 / 15:59