Yanıtlar:
link=/var/opt/foo
target=$(readlink "$link")
$target artık bağlantının hedefi, tıpkı dosya sisteminde saklandığı gibi.
Symlinks göreceli olabilir, bu yüzden normal kullanım için daha iyi olurdu:
target=$(readlink -f "$link")
Bunun readlinkBSD ve diğer sistemlerde bulunmayan GNU Coreutils tarafından kullanıldığını unutmayın .
Düzenle: readlink -f bağlantı hedefi olduğu sürece BSD'lerde çalışır. realpathbenzer şekilde çalışan başka bir BSD'ye özgü araçtır.
-fve aynı şekilde readlink -fçalışıyor (bağlantı hedefinin var olduğu varsayılarak). BSD'de, realpathbaşka bir alternatif gibi görünüyor readlink -m.
readlink()BSD'ler 4.2BSD günlerinden beri bir sistem çağrısı yaptı. Mevcut BSD'lerinreadlinkprogramı FreeBSD 4.10 ile piyasaya sürüldü.statKomut için sabit bir bağlantı olarak (yeniden) uygulandı ( MacOS X kılavuz sayfası FreeBSD 9 kılavuz sayfası ). Bir-mseçeneği olmadığına dikkat edin .