Eu tenho uma descoberta parecida com esta:
rm -f crush-all.js
find . -type f \( -name "*.js" ! -name "*-min*" ! -name "*console*" \) | while read line
do
cat "$line" >> crush-all.js
echo >> crush-all.js
done
Eu gostaria de adicionar para excluir um diretório chamado "test" na descoberta, mas não consigo descobrir como adicionar "-type d" de alguma forma. Como eu fiz isso?
Obrigado!
Você pode tentar com grep como este (a pasta aqui é chamada test_folder):
ou se sua descoberta retornar caminho relativo:
ou se você quiser todas as pastas com o mesmo nome, mas com caminho diferente
Cumprimentos,
fonte
Para expandir o que acho que
@CharlesClavadetscher
estava acontecendo com sua resposta. Se você omitir um caminho-not -path ...
find, continuará descendo o caminho. Em vez disso, o uso-prune
impedirá que desça ainda mais no caminho omitido, tornando-o mais rápido. Então você pode fazer algo comofonte
Eu uso "not wholename" quando estou apenas procurando por um arquivo. -name testa o nome do arquivo real, mas -wholename testa o caminho completo. Então, adicione um ignorar para teste à pergunta acima:
fonte