For循环

一般的for循环都是这种形式的:

for i in {1..9}; do
    echo $i
done

但是还有一种形式, 也许你不知道:

for (( expr1; expr2; expr3 ))
do
    commands
done

这就是类似C语言的格式.

上面输出1-9的例子就可以写成:

for (( i=1; 1 < 10; i++ ))
do
    echo $i
done

甚至允许空条件:

#!/bin/bash
i=1
for (( ; ; ))
do
    sleep $i
    echo "Number: $((i++))"
done
$ ./for11.sh
Number: 1
Number: 2
Number: 3

多重操作:

#!/bin/bash
for ((i=1, j=10; i <= 5 ; i++, j=j+5))
do
echo "Number $i: $j"
done
$ ./for12.sh
Number 1: 10
Number 2: 15
Number 3: 20
Number 4: 25
Number 5: 30

results matching ""

    No results matching ""