加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

SHELL训练营--day8__shell函数和数组

发布时间:2020-12-15 23:06:04 所属栏目:安全 来源:网络整理
导读:函数 shell 中,将实现特定功能的代码组合起来,即为函数体。 函数格式如下: [ function ] funname [()]{ action; [return int;]} 注意函数定义: 1.function 和(),在函数定义时,至少要保留一个。 2.函数返回,可以使用return 返回。如无返回 ,则以最后一
函数

shell 中,将实现特定功能的代码组合起来,即为函数体。
函数格式如下:

[ function ]  funname  [()]
{
    action;
    [return int;]
}

注意函数定义:
1.function 和(),在函数定义时,至少要保留一个。
2.函数返回,可以使用return 返回。如无返回 ,则以最后一个命令运行结果返回。
3.函数返回:return后跟数值n(0-255).
4.在函数外,获取函数返回值,需要在调用该函数后立刻通过 $? 来获得。
5.函数调用方法:直接使用函数名。
6.函数在使用前需要先定义。即函数体,一般都在shell脚本最前方。

  • 函数参数

    函数参数主要是通过位置变量获取。
    位置变量:$0 表示函数名,$n表示第n个参数。$#表示参数个数。
    其它参数:$* 将所有参数以一串字符形式展示,以空格为分隔符。
    $$ 表示 脚本 运行时,脚本 的进程号。

数组

shell 只支持一维数组。数组,多个变量组合起来存放。
数组中变量获取,通过数组下标获取。
数组下标,以0开始,按1递增。

  • 数组定义

    array_name=(value1,... valuen)

  • 显示数组成员

    所有成员:echo ${a[@]} 或是:echo ${a[*]}
    显示第0个成员:echo ${a[0]}
    获取成员个数:echo ${#a[@]}
    取成串成员:echo ${a[@]:start_pos:count_number}
    需要注意的是,start_pos指定位置,可以从前向后指,也可指定后面固定位置。
    如:start_pos为 0-3,即为 倒数第三个位置。
    count_number为需要取的成员个数。

  • 成员赋值

    单个成员赋值:a[post]=value; echo ${a[post]}.
    需要注意,如果赋值的下标不存在。默认数组个数会增加到新加下标位置。其它中间不存在的下标值默认为空。如a=(0,1,2); a[4]=4;echo ${a[3]};echo ${a[4]}
    数组仅显示时,修改数组成员值。不修改存储值:如

    echo ${a[@]:/2/3} ; # 表示 显示数组a,并将下标为2的成员值显示为3.
  • 删除数组

    数组也是一个变量。删除该变量即可。如:a=(1,2); unset a;
    删除数组某个成员:unset a[post].

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读