Existem alguns problemas:
-
readlink -f
retorna um caminho absoluto,-path
espera um relativo prefixado com./
. - Algumas versões de
readlink
retornam um caminho com uma barra final para um symlink, que é recusada porfind
(testado com o Ubuntu, não reproduzível no Gentoo).
Isso funcionou para mim no Ubuntu, mas pode não ser a solução mais elegante:
find . -maxdepth 1 -mindepth 1 -type d -not -path "./$(readlink active | sed "s/\/$//")" -not -path "./$(readlink previous | sed "s/\/$//")"
Aqui está uma alternativa um pouco mais simples usando realpath
, testado no Gentoo; poderia ser o mais portátil:
find . -maxdepth 1 -mindepth 1 -type d -not -path "./$(realpath --relative-to=. active)" -not -path "./$(realpath --relative-to=. previous)"