Портирование сценария оболочки из Solaris в Linux

Это должно быть довольно просто, но я не уверен, на что он жалуется.

type=${1-"-Debug"};
version=${2-"-0"};
echo "We are going to be building eValuate in build mode: " $type
if [[ $version = -1 ]]
  then
  echo "We are going to be building eValuate with omniORB-4.1.4"
  else
  echo "We are going to be building eValuate with omniORB-4.0.4"
fi
if [ $PLATFORM = "HPUX" ]
then
    if [ $type = -release ]
    then
      export MAKEFILE_MAIN=$PWD/common/makefile/makefile.hp
      export MAKEFILE_DEFS=$PWD/common/makefile/makefile.hp.rls
      shift
    else
      export MAKEFILE_MAIN=$PWD/common/makefile/makefile.hp
      export MAKEFILE_DEFS=$MAKEFILE_MAIN
    fi

    elif [ $PLATFORM = "AIX" ]
    then
       mv $PWD/Calculations/CalculationSTD/makefileAIX $PWD/Calculations/CalculationSTD/makefile
       mv $PWD/Calculations/CalculationSTD/StandardCalculationAIX.cpp     $PWD/Calculations/CalculationSTD/StandardCalculation.cpp
       rm -r $PWD/Calculations/CalculationSTD/Carleton
       if [ $type = -release ]
       then
         export MAKEFILE_MAIN=$PWD/common/makefile/makefile.aix
         export MAKEFILE_DEFS=$PWD/common/makefile/makefile.aix.rls
         shift
      else
     export MAKEFILE_MAIN=$PWD/common/makefile/makefile.aix
     export MAKEFILE_DEFS=$MAKEFILE_MAIN
      fi
  fi

Похоже, это работает нормально в Solaris и AIX, но в Linux я получаю следующие сообщения об ошибках:

   : command not found 1:
   : command not found 2:
   We are going to be building eValuate in build mode:  -release
   ./setpath.sh1: line 22: syntax error near unexpected token `elif'
   '/setpath.sh1: line 22: `       elif [ $PLATFORM = "AIX" ]

Почему это не нравится элиф? Или жаловаться на что-то еще?

1 ответ

Решение

Наконец-то получил ответ, что-то совершенно случайное, что-то связанное с форматом:

Я перенес файл с моего компьютера с Windows, и я думаю, что Linux - это просто сука, которая не может с этим справиться. Solaris и AIX прекрасно работают.

Использовал эту команду. dos2unix *.sh

Другие вопросы по тегам