Russian Qt Forum

Qt => Многопоточное программирование, процессы => Тема начата: Сергей от Апреля 26, 2011, 11:10



Название: проверка и установка переменных среды
Отправлено: Сергей от Апреля 26, 2011, 11:10
подскажите где в этой программе есть синтаксическая ошибка
Код:
if [ -z $EDITOR ] ; then
        echo "Your EDITOR environment is not set"
        echo "I will assume you want to use vi..OK"
        echo -n "Do you wish to change it now? [y..n] :"
        read ANS
if [ "$ANS" = "y" ] || [ "$ANS" = "Y" ]; then
        echo "enter your editor type :"
        read EDITOR
if [ -z $EDITOR ] || [ "$ANS" = "Y" ]; then
        echo "enter your editor type :"
        read EDITOR
        if [ -z $EDITOR ] || [ "$EDITOR" = "" ]; then
        echo "No, editor entered, using vi as default"
        EDITOR=vi
        export EDITOR
fi
        EDITOR=$EDITOR
        export EDITOR
        echo "setting $EDITOR"
fi
else
        echo "Using vi as the default editor"
        EDITOR=vi
        export vi
fi
~                                                                   
~                                                                   
~             
при её запуске она выдаёт мне такую ошибку:
[serrggeee@localhost ~]$ sh test
test: line 26: syntax error: unexpected end of file
[serrggeee@localhost ~]$


Название: Re: проверка и установка переменных среды
Отправлено: Fat-Zer от Апреля 26, 2011, 11:33
у вас не хватает одного fi.
И ещё раз, вы разделом, да и форумом вообще ошиблсь... здесь нее обсуждают sh-скрипты


Название: Re: проверка и установка переменных среды
Отправлено: Сергей от Апреля 26, 2011, 11:41
а где именно? нужно поставить


Название: Re: проверка и установка переменных среды
Отправлено: GreatSnake от Апреля 26, 2011, 11:50
перед else

Мог бы и сам в редакторе выставить индентацию и сам бы всё увидел
Код
Bash
if [ -z $EDITOR ] ; then
       echo "Your EDITOR environment is not set"
       echo "I will assume you want to use vi..OK"
       echo -n "Do you wish to change it now? [y..n] :"
       read ANS
if [ "$ANS" = "y" ] || [ "$ANS" = "Y" ]; then
       echo "enter your editor type :"
       read EDITOR
if [ -z $EDITOR ] || [ "$ANS" = "Y" ]; then
       echo "enter your editor type :"
       read EDITOR
       if [ -z $EDITOR ] || [ "$EDITOR" = "" ]; then
       echo "No, editor entered, using vi as default"
       EDITOR=vi
       export EDITOR
fi
       EDITOR=$EDITOR
       export EDITOR
       echo "setting $EDITOR"
fi
fi
else
       echo "Using vi as the default editor"
       EDITOR=vi
       export vi
fi
 


Название: Re: проверка и установка переменных среды
Отправлено: Fat-Zer от Апреля 26, 2011, 11:59
перед else
галиматья получается, батенька)))
не хватает, скорей всего, в самом конце... хотя тут что автор подразумевал... тут в скрипте много бреда...


Название: Re: проверка и установка переменных среды
Отправлено: GreatSnake от Апреля 26, 2011, 12:09
Цитировать
галиматья получается, батенька)))
неа, по скобкам именно так

Цитировать
хотя тут что автор подразумевал... тут в скрипте много бреда...
да, логика бредовая. Особенно
Код
Bash
EDITOR=$EDITOR
export vi