zoukankan      html  css  js  c++  java
  • Shell脚本的数组、for循环以及函数声明

    前言

    对于一些设计操作系统的任务,第一想到Python调用os.system()函数调用shell命令。
    简单的流程控制,决定直接编写shell脚本,顺便也能熟悉shell的语法。

    数组

    类似其他语言,shell也支持数组,不过仅限一维,对于矩阵等高维数组只能间接实现。

    • 声明方法1
      直接赋值,以空格分割
    #!/bin/bash
    array=(-1.0 C 2 up)
    
    • 声明方法2
      逐一赋值,下标始于0
    #!/bin/bash
    array[0]=-1.0
    array[1]=C 
    array[2]=2 
    array[3]=up
    
    • 调用方法
    #!/bin/bash
    echo $array       #默认返回首元素:-1.0
    echo ${array[3]}  #按index返回:up
    echo ${array[*]}  #输出所有元素:-1.0 C 2 up
    echo ${array[@]}  #同上
    echo ${#array[*]} #获取长度:4
    

    for循环

    和其他语言一样,shell支持for循环进行遍历。
    若列表是确定的,可直接写作:

    #!/bin/bash
    for n in -1 0 1
    do
        echo $n
    done
    

    若列表来自变量,也可写作for n in ${array[@]}
    除常见循环外shell还有until循环,和while相反,有点意思。

    函数声明

    对于反复调用的代码片段,函数可能是更好的选择。
    shell声明函数时不指定参数的名称和数量,而使用类似脚本传入参数的方式$1 $2实现

    #!/bin/bash
    myFun(){
        touch $1
        mv ./a.out $2
    }
    

    注意:

    1. 参数始于$1
    2. 超过10个参数写作${10}
  • 相关阅读:
    transform.rotation和GetComponent<Rigidbody>().MoveRotation
    indexes和indices的区别
    AnimationState
    计算边缘光照
    Marshal.FreeHGlobal 方法 (IntPtr)
    切线空间(Tangent Space)
    Unity3D中使用Profiler精确定位性能热点的优化技巧
    最美的数学定理
    [唐诗]190襄阳歌-李白
    [唐诗]189长相思-李白
  • 原文地址:https://www.cnblogs.com/azureology/p/13167165.html
Copyright © 2011-2022 走看看