LINUX.ORG.RU

Не видит скрипт


0

1

ЛОР, у меня пятничная тупость и я не понимаю, в чем дело.
Есть скрипт установки файловой структуры для разработки под плату. В нём есть в том числе и

# First calculate some important file names

export MYSELF=`which $0`
export SCRIPTSDIR=`echo -e $MYSELF | sed "-e s#/initproject.sh##"`
export BSPDIR=`cd ${SCRIPTSDIR};cd ..;pwd`
export CURRENTDIR="`pwd`"

# Set up the environment 
# (Definition of crosstoolchain and so on
source $SCRIPTSDIR/environment.sh

# Load the tool functions
source $SCRIPTSDIR/misctools.sh
source $SCRIPTSDIR/menutools.sh
source $SCRIPTSDIR/symlinkmirror.sh

Запускается это всё из /opt/, куда до этого было поставлено из тарбола.
При запуске скрипта из нужной папки, в которой он создаст структуру файлов, получаю:
alex@host:~/kontron$ sh /opt/bsp_eb42x/scripts/initproject.sh eb42x_proj
/opt/bsp_eb42x/scripts/initproject.sh: строка 27: /environment.sh: Нет такого файла или каталога

Скрипт environment.sh лежит рядом с запускаемым. ЧЯДНТ?
посмотреть полностью initproject.sh
посмотреть полностью environment.sh
Самое неясное то, что ещё вчера я точно таким же образом всё удачно ставил на другую машину.


В строке 27 замени source на echo и посмотри что выведет. Думаю, вопросы отпадут.

Очень смущает вот эта конструкция:

export SCRIPTSDIR=`echo -e $MYSELF | sed "-e s#/initproject.sh##"`

Может лучше так:

export SCRIPTSDIR="${MYSELF%/*}"

(пишу по памяти)

P. S. Рекомендую: http://www.opennet.ru/docs/RUS/bash_scripting_guide/

Kroz ★★★★★ ()
Ответ на: комментарий от Kroz

При замене на echo ругается на отсутствие скриптов ниже.
Наверное действительно дело в том, что он просто не так определяет папку со скриптами. Хотя почему вчера ставилось всё же неясно. За ссылку спасибо, буду читать.

hdclnr ()

> export MYSELF=`which $0`
Просто $0.

export BSPDIR=`cd ${SCRIPTSDIR};cd ..;pwd`

$(readlink -f ..)

AITap ★★★★★ ()
Ответ на: комментарий от Enoch

Вышло когда прописал

SCRIPTSDIR="/opt/bsp_eb42x/scripts"

=) по-прежнему неясно, почему не работает прежний метод, ну да ладно. Спасибо!

hdclnr ()
Ответ на: комментарий от hdclnr

>=) по-прежнему неясно, почему не работает прежний метод, ну да ладно. Спасибо!

Unix-way, что уж там :)))

Enoch ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.