* оператор, сценарий оболочки

У меня проблема с оператором *. Я попытался написать сценарий, который принимает 3 парматера, первые два - числа (любого типа), третий - оператор, а затем распечатывают результат выражения. Все работает нормально, кроме оператора *. У меня ошибка "(standard_in) 1: синтаксическая ошибка"

Вот мой код.

if [[ $3 == / &&  $2 == 0 ]]
then
    echo "divide by 0"
    exit 1
fi
result=$(echo "$1$3$2"|bc -l)
echo "result: $result"

Я печатаю «$ 3» и получаю файл списка родительского каталога, поэтому сценарий понимает, что «*» - это файл списка.

Итак, что мне делать с этой проблемой? Благодарить,


person Yukoo    schedule 25.05.2014    source источник


Ответы (1)


Вы можете передать звездочку в виде строки с ./myscript '*' - в этом случае она не расширяется вашей оболочкой.

person Knut    schedule 25.05.2014
comment
Вы совершенно правы ... Моя вина. Я снял скобки с моего ответа. Спасибо! - person Knut; 25.05.2014