Я только начинаю со сценариев оболочки (sh), и у меня есть две проблемы:
Проблема 1 : я пытаюсь создать очень простой скрипт, который создает каталоги сразу идет в это.Это скрипт, который у меня сейчас есть:
#!/bin/sh
mkdir -p "$1"
cd "$1"
По какой-то причине это не работает.Создает каталог, но не заходит в него.Я что-то упускаю здесь очевидное?
Issue 2 : Я пишу очень простой калькулятор, который использует expr.Но для умножения я использую x
вместо *
.Вот что я сейчас имею:
#!/bin/sh
if test $# -lt 3
then
echo "Usage calc [operand1] [operator] [operand2]"
exit
fi
if test $2 = x
then
op='\*'
else
op=$2
fi
ret=`expr $1 $op $3`
echo $ret
Это работает для всех операций, кроме умножения.Например, вызов calc 100 x 10
дает синтаксическую ошибку.Я пробовал разные комбинации, но не могу найти правильный способ присвоения \*
op
.Как правильно это сделать?