bash中有for、while、until三种循环结构;for循环次数一般是固定的,while和until的循环次数可以是固定也可以是不固定的。
1、for循环:
for循环次数是固定的
1.1、语法结构:
(1)、
for 变量名 [ in 取值列表]
do
command1;
command2;
...
done
or 可以写到一行:
for 变量名 [ in 取值列表 ] ; do command1; command2... done;
(2)、
for ((初值;条件;不长))
do
command1;
command2;
...
done
1.2、实例:
seq 命令: 生成数字序列
[root@centos7 scripts]# cat for_sum.sh
#!/usr/bin/bash
#sum求和
#20191210 by zhaoyq
for i in {
1..100}
do
let sum+=$i
done
echo "sum= $sum"
[root@centos7 scripts]#
[root@centos7 scripts]#
[root@centos7 scripts]#
[root@centos7 scripts]# ./for_sum.sh
sum= 5050
[root@centos7 scripts]#
[root@centos7 scripts]# cat for_sum2.sh
#!/usr/bin/bash
#sum求和
#seq 序列
#v1.0 20191210 by zhaoyq
for i in `seq $1`
do
let sum+=$i
done
echo "sum= $sum"
[root@centos7 scripts]#
[root@centos7 scripts]# ./for_sum2.sh 100
sum= 5050
[root@centos7 scripts]#
[root@centos7 scripts]# cat user.txt
zhangsan
lisi
wangwu
zhaoliu
[root@centos7 scripts]#
[root@centos7 scripts]# cat read_for.sh
#!/usr/bin/bash
#按行循环读取文件内容
#v1.0 by zhaoyq 20191210
for user in `cat user.txt`
do
echo $user
done