range循环
#!/bin/bash
for i in $(seq 1 10)
do
echo $i;
done
多个具体值用空格隔开
for i in 1 2 3
do
echo $i
done
使用命令
for i in $(ls) # 遍历ls命令的结果
do
echo $i
done
使用通配符
#!/bin/bash
for i in .* # .开头的所有文件
do
echo $i
done
# 使用列表类型变量
注意for 遇到空白符,比如空格或者\t
都会当成一个元素来对待
#!/bin/bash
my_array="A B 'C'\tD"
for i in $my_array
do
echo $i
done
# 使用特殊变量
第二种:
for ((i = 0; i <= 5; i++))
do
echo “welcome $i times”
done
或
for ((i = 0; i <= 5; i++)); do echo “welcome $i times”; done
练习:计算从1到100的加和。
while循环
while命令根据紧跟其后的命令(command)来判断是否执行while循环,当command执行后的返回值(exit status)为0时,则执行while循环语句块,直到遇到done语句,然后再返回到while命令,判断command的返回值,当得打返回值为非0时,则终止while循环。
第一种
while expression
do
command
…
done
练习:求1-10 各个数的平方和
第二种方式: