zoukankan      html  css  js  c++  java
  • shell之列表的定义与循环

    字符串列表定义方法1:

    a=(f1 f2 f3 f4)
    for i in ${a[*]}#遍历每一个列表值

    for i in ${a[@]}#等价与上一句

    实例:

    #!bin/bash
    a=(f1 f2 f3 f4)
    for i in ${a[*]}; do
    echo ”$i“
    if [ "$i" == "f1" ]; then#判断字符串是否相等,注意前后要有空格,否则变为赋值语句
    echo ”f1 finded“
    else
    echo "NOTFOUND"
    fi
    done

    字符串列表定义方法2:

    a[1]=f1
    a[2]= f2
    a[3]= f3
    a[4]= f4

    实例2:

    #!bin/bash
    a[1]=f1
    a[2]=f2
    a[3]=f3
    a[4]=f4
    for i in ${a[*]}; do
    echo ”$i“
    if [ "$i" == "f1" ]; then
    echo ”f1 finded“
    else
    echo "NOTFOUND"
    fi
    done

    每个列表元素的

    echo "${a[2]}"
    #!bin/bash
    a[1]=f1
    a[2]=f2
    a[3]=f3
    a[4]=f4
    echo "${a[1]}"
    echo "${a[2]}"

    1 获取下标为n的元素:

    1
    variable[n]

    而且不存在数组下标溢出的情况,如果 n>= 数组的长度,那么为空,不会报错。

    2 获取数组长度

    1
    ${#variable[@]}

    或者

    1
    ${#variable[*]}

    那么如何用for遍历呢?一共有两种方式:

    直接遍历每一个值

    1 for i in ${variable[@]}; do

    1
    2
    # do something....
    done

    2遍历每一个值的下标

    for i in $(seq 0 ${#variable[@]}); do

    1
    2
    3
    e=${variable[$i]}
     # do something....
    done

    以上两种方法 把 @ 换成 * 也行。

  • 相关阅读:
    协方差矩阵
    Adobe Photoshop CS6下载安装
    等差数列
    照片产尺寸
    移动立方体算法
    float与double的范围和精度
    C/C++运算符优先级
    通过 Windows API 获取鼠标位置等状态信息
    VC++ 获取鼠标状态,获取鼠标弹起消息
    python动态给对象或者类添加方法
  • 原文地址:https://www.cnblogs.com/zyy98877/p/10234527.html
Copyright © 2011-2022 走看看