Find pode executar argumentos com a opção -exec
para cada correspondência que encontrar. É um mecanismo recomendado porque você pode manipular caminhos com espaços / novas linhas e outros caracteres corretamente. Você terá que excluir o conteúdo do diretório antes de poder remover o próprio diretório, portanto, use -r
com o comando rm
para conseguir isso.
Para o seu exemplo, você pode emitir:
find . -name ".svn" -exec rm -r "{}" \;
Você também pode dizer ao find para encontrar apenas diretórios chamado .svn, adicionando um -type d
check:
find . -name ".svn" -type d -exec rm -r "{}" \;
Aviso Use rm -r
com cuidado para excluir a pasta e todo o seu conteúdo.
Se você quiser excluir somente diretórios vazios, bem como diretórios que contenham apenas diretórios vazios, o find pode fazer isso com -delete
e -empty
:
find . -name ".svn" -type d -empty -delete