A maneira canônica de resolver links simbólicos é usar readlink
.
Para resolver o link simbólico /usr/bin/firefox
:
readlink /usr/bin/firefox
Canonização seguindo todos os links simbólicos entre eles:
readlink -f /usr/bin/firefox
Por exemplo:
$ readlink /usr/bin/firefox
../lib/firefox/firefox.sh
$ readlink -f /usr/bin/firefox
/usr/lib/firefox/firefox.sh
Observe que, para qualquer arquivo que não seja um link simbólico, ele será resolvido para si mesmo:
$ readlink -f /bin/cat
/bin/cat