Remove todos os arquivos de um tipo (extensão de arquivo) da árvore de diretório inteira

1

Estou no macOS Sierra e corro no terminal:

find . -name "*.css" -type f -delete

da pasta src/app e não é excluído de toda a árvore de diretórios, ele exclui apenas de subdiretórios um nível abaixo. Este é o resultado:

Como faço para excluir arquivos css em todos os subdiretórios com mais de um nível abaixo?

    
por BeniaminoBaggins 30.12.2016 / 09:18

2 respostas

4

Você analisou os carimbos de tempo desses css arquivos?

Meu primeiro palpite é que css arquivos são auto-regenerados imediatamente após sua exclusão, de sua scss source. Você pode ver se eles realmente foram excluídos usando uma exclusão detalhada da seguinte forma:

find . -name "*.css" -type f -exec rm --verbose --interactive '{}' \;

E você pode ler os carimbos de hora usando um simples comando ls -l . Eu acho que mostrará os carimbos de tempo de criação fechados para o tempo de exclusão.

    
por 30.12.2016 / 11:32
0

Talvez haja outras possibilidades com outras ferramentas também. Aqui estão dois exemplos com ferramentas Debian pré-instaladas. Para obter mais informações sobre as ferramentas e seus comutadores, consulte o bash com "man".

Isto para apagar com segurança os arquivos (vá na primeira pasta):

find . -name "*.css" -type f -print0 | xargs -0 shred -fuzv -n 48

Ou para excluir arquivos normalmente:

find foldername -name "*.css" -type f -exec rm {} \;

    
por 30.12.2016 / 10:39

Tags