{ find . -type l -exec readlink {} \; ; find . -type d -exec basename {} \; ; } | sort | uniq -u | tail -n +2 | xargs rmdir
Em câmera lenta:
-
find . -type l -exec readlink {} \;
encontra os links e lista os diretórios correspondentes -
find . -type d -exec basename {} \;
encontra e lista os diretórios - a saída dos comandos entre chaves lista todos os diretórios uma vez, exceto aqueles que são o destino de links que aparecem duas vezes
-
sort | uniq -u | tail -n +2
mantém apenas os nomes exclusivos (portanto, os diretórios aos quais não estão vinculados) e remove.
-
xargs rmdir
elimina os diretórios. Substitua porrm -r
para remover seu conteúdo.