zoukankan      html  css  js  c++  java
  • Linux中Shell循环结构for用法笔记

    4418040-08d7eb5624e03b61

    Shell中可以使用for做固定次数循环的处理。常见的for循环用法主要有以下几种:

    1、带列表的for循环

    语法结构:

    for item in (list)

    do

    command

    done

    示例:

    cat demo1.sh 

    内容如下:

    #!/bin/bash

    names="小明 小王 小张"

    for item in names

    do

    echo "${item}"

    done

    执行命令:bash demo1.sh

    输出结果:

    小明

    小王

    小张

    示例2 计算1到100的和

    脚本1:

    #!/bin/bash

    sum=0

    for item in {1..100}

    do

    let "sum+=item"

    done

    echo "总数为:${sum}"

    脚本2:

    #!/bin/bash

    sum=0

    for item in 'seq 1 100'

    #for item in $(seq 1 100)

    do

    let "sum+=item"

    done

    echo "总数为:${sum}"

    输出结果:5050

    示例3循环打印当前目录的文件信息

    #!/bin/bash

    for item in $(ls)

    do

    ls -l $item

    done

    2、不带列表的for循环

    for list

    do

    command

    done

    示例:

    cat demo3.sh

    #!/bin/bash

    for item in $list

    do

    echo -n $item

    done

    执行:bash demo3.sh 10 20 30 40

    输出结果:

    10

    20

    30

    40

    3、类C语言的for循环

    语法结构:

    for ((exp1;exp2;exp3;))

    do

    command

    done

    用法示例:

    #!/bin/bash

    for ((num=1;num<=10;num++))

    do

    echo -n "$num "

    done

    计算1到100的和以及1到100的奇数和

    脚本内容:

    cat demo4.sh

    #!/bin/bash

    sum1=0

    sum2=0

    for((i=1,j=1;i<=100;i++,j+=2))

    do

    let "sum1+=i"

    if [ $j -lt 100 ];then

    let "sum2+=j"

    fi

    done

    echo "sum1=$sum1"

    echo "sum2=$sum2"

    执行:bash  demo4.sh

    输出:

    sum1=5050

    sum2=2500

    注意:有时候使用for循环脚本不注意很有可能出现死循环,它会无限执行下去,会消耗大量的系统资源,所以

    关于循环的脚本要多加测试,避免出现死循环的情况,如果执行的时候出现死循环可以用ctrl+c停止脚本运行。

  • 相关阅读:
    mysql 的锁
    vsphere虚拟机连网
    三种响应式文字(废弃)
    学习笔记(六)
    优秀 H5 案例收集 vol.3(不定期更新)
    优秀 H5 案例收集 Vol.2(不定期更新)
    优秀 H5 案例收集 vol.1(不定期更新)
    手机调取摄像头问题(getUserMedia)
    ES6 随记(3.3)-- 数组的拓展
    input-file 部分手机不能拍照问题
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351143.html
Copyright © 2011-2022 走看看