Я пишу следующий код:Unix - если еще EOF ошибка
if [ $opt -ge $max -o $opt -le 0 ]
then
echo "Bad";
else
echo "Good";
if [ $opt = "\" -o $opt = "/" ]
then
echo "Good";
else
echo "Invlaid"; //Line number 21
fi
fi //Line number 23 no Line number 24.
это показывает ошибку:
./file.sh: line 21: unexpected EOF while looking for matching `"'
./file.sh: line 24: syntax error: unexpected end of file
Если я помещаю этот код:
if [ $opt -ge $max -o $opt -le 0 ]
then
echo "Bad";
else
echo "Good";
fi //Line number 23 no Line number 24.
Тогда есть нет погрешность. Я не могу понять проблему.
См. Подсветку синтаксиса - вы случайно «избежали» второй цитаты в 'if [$ opt =" \ "-o $ opt ="/"]'. –
Обратите внимание, что '-o' для логического ИЛИ устарел; вы должны использовать '[" $ opt "-ge" $ max "] || ["$ opt" -le 0] 'вместо этого - и цитируйте свои расширения! – chepner