В системе GNU я бы просто использовал readlink -f $SOME_PATH
, но Solaris не имеет readlink.
Я бы предпочел что-то, что хорошо работает в bash, но другие программы в порядке, если нужно.
Редактировать: Лучшее из того, что я придумал, использует cd и pwd, но требует еще нескольких хакеров для работы с файлами, а не только с каталогами.
cd -P "$*"
REAL_PATH=`pwd`