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

 

posted @ 2023-04-18 16:19  时间在哪  阅读(51)  评论(0)    收藏  举报