美文网首页
第二十八节、shell编程中的函数及数组

第二十八节、shell编程中的函数及数组

作者: 妄语莫言 | 来源:发表于2017-12-21 16:32 被阅读0次
    函数的定义及使用

    shell中函数是一堆代码的集合,主要是为了方便代码的重用,减少代码的书写量,定义的函数shell会直接解析函数放入内存中但不运行,直到代码中通过函数名直接调用
    大概格式如下()里面一般用来传参数,但是shell中函数一般只作为代码块的载体,所以留空,{}里面存放代码块即命令的集合

    #代码格式如下:编写一个自动安装apache http的函数
    function Apache_install(){
                      echo "This is SHElL  command"
                      wget  -c  http://URL&&tar -zxf  apche-http1.142.tar.gz&& cd http1.2-12-10&&./configure --prefix=/usr/local/apache --enable so   --enable rewrite
                      if  [ $? -eq 0 ];then
                               make&&make install
                      fi
    #run fuction command 
    Apache_install      #通过函数名直接调用函数
    }
    
    编程与&,或|符号的应用
    #双与&&表示前面执行成功后继续执行后面的命令语句
    [root@localhost sh]# [ -d /etc ] && echo "yes"
    yes
    #双或||表示前面执行失败后继续执行后面的命令语句
    [root@localhost sh]# [ -d /etdddd ] || echo "no"   
    no
    
    SHELL中的数组

    数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字成为数组名,编号成为下标。
    数组的定义类似于python中的元组,通过下标调用数组中的成员,数组成员之间一般以空格或者换行符号分割

    #下标索引值是从0开始
    [root@localhost ~]# A=(a1 a2 a3 a4)
    [root@localhost ~]# echo ${A[0]}
    a1
    #打印所有参数
    [root@localhost ~]# echo ${A[@]}
    a1 a2 a3 a4
    #打印参数个数
    [root@localhost ~]# echo ${#A[@]}
    4
    #删除数组中的参数
    [root@localhost ~]# unsetA[2]
    #替换数组中的参数
    [root@localhost ~]# echo ${A[@]/a1/a5}
    

    相关文章

      网友评论

          本文标题:第二十八节、shell编程中的函数及数组

          本文链接:https://www.haomeiwen.com/subject/uhonwxtx.html