唉 没学过shell 然后同事遇到问题 我找同学问的 是有必要学学的 本来也不复杂 不过语法太怪 实在搞不懂 呵呵
就写了个简单的脚本
#!/bin/sh
number=1
max=3
while [ "$number" -le "$max" ]
do
echo "this is $number cycle start ......"
number=$number + 1
done
echo "over ..."
怎么编都不过,错在number=$number + 1这行,改了很多版本也不行
所以转一篇如下(shell格式要求很死 比如while后【】要有空格 number后+两边要有空格 变量赋值=不能有空格)
1、expr用于计算表达式的值
expr expression1 操作符 expression2
操作符前必须加'\'用于转义,并且操作符和两个expression之间必须有空格
count=1
count=`expr $count + 1` (这里不是单引号,是数字键1旁边的那个,⊙﹏⊙b啊)
echo $count
输出为2
2、最好用$(())代替,效率更高
count=1
count=$(($count+1))
echo $count
3、也可以使用$[]
var=$[1+5]
echo $var //6
count=1
var=$[$count+1]
echo $var