>>[ "${0%%/*}" ] && a="`pwd`/${0}" || a="$0"
>>echo $a
>
>Таким образом получается полный путь + название скрипта.
>Уважаемый dev, можете подсказать как получить только путь? А ещё лучше киньте
>линк/ман, где можно прочитать о конструкциях типа [ "${0%%/*}" ]. Из пути файла получить имя каталог можно стандартными средствами - dirname, как уже сказали.
О [ "${0%%/*}" ]:
1. Открывающая скобка [ это синоним команды test, которая описана в соотв. мане.
2. Конструкция ${0%%/*} относится к типу write-only - ее можно написать но совершенно не возможно понять, что она делает :) В данном случае она отсекает от $0 все, начиная с первого слеша. Т.е. если у нас путь был абсолютный, то строка останется пустой, что и проверяет test, выполняя то, что стоит после && или то, что после ||.
Вкратце: man sh