第八章 shell学习之循环和结构化命令
for循环1.
列表for循环
for variable in {list}#有些像C++/CLR中的for each
do
...
done
如:
1.
# cat b.sh
#! /bin/bash
for i in 1 2 3 4 5 #1 2 3 4 5等价于{1..5}
do
echo $i
done
# ./b.sh
1
2
3
4
5
2.
# cat b.sh
#! /bin/bash
for i in $(seq 1 2 6) #从1增加到6,步幅为2,相当于`seq 1 2 6`
do
echo $i
done
# ./b.sh
1
3
5
3.
# cat b.sh
#! /bin/bash
for i in $( ls ) #用命令ls的内容替换$( ls )
do
echo $i
done
# ./b.sh
1c
a
a1
a1~
...
4.
# cat b.sh
#! /bin/bash
for i in "$*" #把输入的所有参数看做一个字符串整体
do
echo $i
done
# vim b.sh
# ./b.sh 1 2 3
1 2 3
# cat b.sh
#! /bin/bash
for i in "$@"#把输入的参数分开看待
do
echo $i
done
# ./b.sh 1 2 3
1
2
3
2.
不带列表的for循环
for variable
do
...
done
相当于
for variable in "$@"
do
...
done
3.
类C风格的for循环
for((expr1;expr2;expr3))
do
...
done
如:
for((i=1;i
页:
[1]