Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вопрос про скрипт сравнения bash в линукс

Артру Васютин Ученик (89), открыт 2 недели назад
Я сделал скрипт где вводя нужную цифру то запускается скрипт

 read user
if [$user == 1 ]; then
./time.sh
fi

if [$user == 2 ]; then
./clipboard.sh
fi

if [$user == 3 ]; then
./rss.sh
fi

if [$user == 4 ]; then
./email.sh
fi

if [$user == 5 ]; then
./in.sh
fi

if [$user == 6 ]; then
./calendar.sh
fi

но если я ввожу цыфру то мне выдает "menu2.sh: строка 2: [1: команда не найдена" В чем может быть проблема?
2 ответа
etar125 Гуру (3999) 2 недели назад
 read num 

case $num in
1)
...
;;
2)
...
;;
*)
; если другая цифра
esac
Лучше вот так.
А так тебе надо == заменить на -eq и поставить пробел перед $
Артру ВасютинУченик (89) 2 недели назад
Спасибо! А то уж думал часть скриптов на питоне писать...
Артру ВасютинУченик (89) 2 недели назад
menu2.sh: строка 3: [: -eq: ожидается унарный оператор
/bin/laden Искусственный Интеллект (113101) 2 недели назад
[ является коммандой, такой же как test, так что должна в строке быть отделена пробелами.
Похожие вопросы