#!/bin/sh
a=1
a=$(($a+1))
a=$[$a+1]
a=`expr $a + 1`
let a++
let a+=1
((a++))
echo $a
1.古典方法
length=`expr length + 1`
2. bash only
$((length++))
1. i=`expr $i + 1`;
2. let i+=1;
3. ((i++));
4. i=$[$i+1];
5. i=$(( $i + 1 ))
shell中如何设置自增的变量
loop=1
for i in `ls`
do
# loop=`expr $loop + 1`
# let loop+=1
# ((loop++))
# loop=$[$loop+1]
loop=$(( $loop + 1 ))
echo "$i "
echo "num : $loop"
done
注意:loop=`expr $loop + 1` ,loop变量左右 不能 有空格,并且 不是 单引号;
另外,对于固定次数的循环,可以通过seq命令来实现,就不需要变量的自增了;实例如下:
#!/bin/bash
for j in $(seq 1 5)
do
echo $j
done
本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1544912,如需转载请自行联系原作者