Excluir pastas vazias - recursivo

Excluir pastas vazias - recursivo

Eu gostaria de limpar algumas pastas. Então, quero excluir todas as pastas que estão vazias ou que contêm apenas outras pastas...

Primeiro eu tentei

find . -type d -delete

mas isso lista as subpastas após os pais, então eu teria que executá-lo várias vezes.

Então tentei usar tac e pipes

find . -type d | tac | xargs rmdir

Este falha em espaços em branco, etc., então preciso de uma máscara - agora estou preso...

Responder1

find . -type d -depth -exec rmdir {} +

deve funcionar se você tiver um find(1) recente - observe que o execplus foi adicionado em 1989 ;-)

Observe que houve uma dica de que pode haver implementações de localização não padrão que emitem um aviso quando -depthnão foram especificadas como first primary.

informação relacionada