Оболочка script аргументов
Я только начал писать сценарии оболочки в Unix, поэтому, я новичок новичков
Я хочу прочитать приведенные аргументы, когда пользователь запускает script
например:
sh script -a abc
Я хочу прочитать для аргумента -a
пользователь дал abc
.
Мой код:
if ( $1 = "-a" )
then var=$2
fi
echo $var
Я получаю сообщение об ошибке.
Ответы
Ответ 1
Bash использует внешнюю программу под названием test для выполнения логических тестов, но эта программа используется в основном через ее псевдоним [
.
if ( $1 = "-a" )
должен стать
if [ $1 = "-a" ]
если вы используете [
или
if test $1 = "-a"
Ответ 2
#!/bin/sh
if [ $1 = "-a" ]; then
var=$2
fi
echo $var
Вы должны быть осторожны с пространством между if и [