Она равна первому по счету переданому параметру. В bash, если не ошибаюсь, процесс не может быть запущен этажом выше. В текущем окружении - всегда пожалста: . scriptname Текущий скрипт не проверял, но вроде должен работать. Как правило, энтим способом импортируют переменные из внешних сценариев.
Познание бесконечности требует бесконечного времени.
А. и Б. Стругацкие
Понедельник начинается в субботу
if [ "$1" = "" ];
then
echo eval . \"$0\" \"$0\" # запустить самого себя с параметром равным самому себе
exit
fi;
if [ "${1:0:1}" = "/" ];
then # launched via full path
mydir=`dirname "$1"`
else
mydir=`dirname "$PWD/$1"`
fi;