语法结构

    for((i=1;i<=10;i++))
    do
    条件
    done
    ——————-
    for i in 这种结构在shell中的所有循环语句中是最常用也是最实用的。
    大多数结构,把1234分次赋值给 i,因为shell主要不是用来做复杂数学运算的,不用考虑1000次这样的问题。
    for i in 1 2 3 4
    do
    条件
    done

    从1加到100的和

    1. #!/bin/bash
    2. s=0
    3. for (( i=1;i<100;i++))
    4. do
    5. s=$(( $s+$i ))
    6. done
    7. echo $s
    8. ~

    解压缩一个文件夹下的所有压缩包

    1. #!/bin/bash
    2. cd /root/tar
    3. #将压缩包名输入进tar文本文件中
    4. ls *.tar.gz>tar.log
    5. ls *.tgz>>tar.log&>/dev/null
    6. #统计文件中的行数,也就是压缩包的个数,用来传递接下来的循环次数
    7. aa=$(cat tar.log|wc -l)
    8. for(( i=1;i<="$aa";i++ ))
    9. do
    10. #NR 当前awk所处理的行,是总数据的第几行
    11. bb=$(cat tar.log |awk 'NR=='$i' {print $1}')