How can I display value of a symbolic link on standard output?
The external command readlink can be used to display the value of a symbolic link.
$ readlink /bin/sh bash
you can also use GNU find's %l directive, which is especially useful if you need to resolve links in batches:
$ find /bin/ -type l -printf '%p points to %l\n' /bin/sh points to bash /bin/bunzip2 points to bzip2 ...
If your system lacks readlink, you can use a function like this one:
readlink() { local path=$1 ll if [ -L "$path" ]; then ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" && echo "${ll/* -> }" else return 1 fi }