• Авторизация


Определение полного пути shell скрипта средствами самого shell ( аналог realpath() ) 13-10-2010 06:48 к комментариям - к полной версии - понравилось!


Способ 1, самый простой с помошью readlink:

#!/bin/sh

#выведет полный путь в канонической форме
readlink -fn "$0"

Способ 1 требует наличия программы readlink

Способ 2, без приведения к канонической форме пути, но средствами только самого shell интерпретатора:

#!/bin/bash

#Способ получения полного имени скрипта,
#без приведения к канонической форме пути,
#средствами только самого shell интерпретатора

#REALPATH DETECTED (${string:position:length} - extract subtring from string)
if [ ${0:0:2} == './' ]; then
    FULL_NAME="$PWD/${0:2}"
else
    FULL_NAME="$0"
fi

echo "Full program name: '$FULL_NAME'"

Способ 2: работа проверена только в bash реализации shell. В sh, csh, ksh не уверен что будет работать.

Если Вам известны ещё способы, то желательно написать его в комент.

вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Определение полного пути shell скрипта средствами самого shell ( аналог realpath() ) | Student_FMF - Дневник Student_FMF | Лента друзей Student_FMF / Полная версия Добавить в друзья Страницы: раньше»