Shell脚本--for
1. C语言风格的 for 循环
其基本格式为:
for((exp1; exp2; exp3)) do statements done
for 循环中的 exp1(初始化语句)、exp2(判断条件)和 exp3(自增或自减)都是可选项,都可以省略(但分号 ; 必须保留)。
示例:
#!/bin/bash sum=0 for ((i=1; i<=100; i++)) do ((sum += i)) done echo "The sum is: $sum"
其结果为:
The sum is: 5050
2. Python 风格的 for in 循环
其基本格式为:
for variable in value_list do statements done
variable 表示变量,value_list 表示取值列表,in 是 Shell 中的关键字。
每次循环都会从 value_list 中取出一个值赋给变量 variable,然后进入循环体(do 和 done 之间的部分),执行循环体中的 statements。直到取完 value_list 中的所有值,循环就结束了。
示例:显示本目录下的文件和文件夹
#!/bin/bash for n in 1 2 3 do echo ${n} done
其结果为:
1
2
3
-
对 value_list 的说明
1) 直接给出具体的值
示例参考前一个示例。
2) 给出一个取值范围
示例:计算从1加到100的和
#!/bin/bash for n in {1..100} do ((sum+=n)) done
注意中间用两个点号相连,而不是三个点号,这种形式只支持数字和字母。
3) 使用命令的执行结果
示例:显示当前目录下的所有文件和文件夹
#!/bin/bash for file in $(ls) do echo ${file} done
4) 使用 Shell 通配符
示例:显示当前目录下的所有文件和文件夹
#!/bin/bash for file in * do echo ${file} done
5) 使用特殊变量
#!/bin/bash function _print() { for str in $* do echo ${str} done } _print hello world

浙公网安备 33010602011771号