shell数组是什么?怎么用?
admin
2023-01-21 02:20:49
0

数组就是把n个变量或者字符内容集合起来用一个名字命名
接着用编号对它们区分的元素集合,这个名字叫数组名
区分不同内容的是编号,叫数组下标
有了数组,就能用一样的名字引用不同的变量或者变量值,并通过数字来识别它们
使用数组也能使代码缩短简洁等好处


数组怎么定义的呢,这里介绍2种常用的方法:

No.1
小括号将变量值括起来赋值给数组变量,每个变量值之间要用空格分隔。

array:数组       value:值
array=(value1 value2 value3) 

[root@node1 ~]# array=(value1 value2 value3)
[root@node1 ~]# echo ${array[*]}
value1 value2 value3

No.2

用小括号将变量值括起来,同时采用键值对的形式赋值

array=([1]=value1 [2]=value2 [3]=value3)

[root@node1 ~]# array=([1]=value1 [2]=value2 [3]=value3)
[root@node1 ~]# echo ${array[@]}
value1 value2 value3
[root@node1 ~]# echo ${array[2]}
value2
[root@node1 ~]# echo ${array[1]}
value1

补充:还可以定义动态内容赋值,结果显示命令执行后的结果

输出数组的个数:

[root@node1 ~]# echo ${#array[*]}
3

删除第n个数组:

[root@node1 ~]# unset array[1]
[root@node1 ~]# 
[root@node1 ~]# echo ${array[*]}
value2 value3
删除整个数组:
[root@node1 ~]# unset array
[root@node1 ~]# echo ${array[*]}

[root@node1 ~]# 

数组内容的获取和替换:

[root@node1 ~]# array=(a b c d e)
[root@node1 ~]# echo ${array[@]:0:2}
a b
替换(不会修改原数组):
[root@node1 ~]# echo ${array[@]/e/5}
a b c d 5

shell数组脚本案例请移步下一篇博文~谢谢阅读~

相关内容

热门资讯

华海清科:12英寸减薄抛光一体... 中证报中证网讯(王珞)12月10日,华海清科官微披露,公司自主研发的12英寸减薄抛光一体机Versa...
今日重磅消息“棋乐麻将.有没有... 家人们!今天小编来为大家解答棋乐麻将透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买很...
今日重大发现“丫丫诗词.辅助开... 今日重大发现“丫丫诗词.辅助开挂神器?”必胜开挂神器您好,丫丫诗词这个游戏其实有挂的,确实是有挂的,...
最新引进“福建兄弟十三水.到底... 您好:福建兄弟十三水这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这...
今日重磅消息“欢乐时光.有没有... 今日重磅消息“欢乐时光.有没有挂?”其实是有挂您好,欢乐时光这个游戏其实有挂的,确实是有挂的,需要了...
玩家分享攻略“微乐捉鸡麻将.辅... 有 亲,根据资深记者爆料微乐捉鸡麻将是可以开挂的,确实有挂(咨询软件无需...
玩家分享攻略“皇豪互娱牛牛.怎... 有 亲,根据资深记者爆料皇豪互娱牛牛是可以开挂的,确实有挂(咨询软件无需...
玩家攻略科普“微信十三水.有挂... 您好:微信十三水这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款游...
玩家攻略科普“新518互游.开... 家人们!今天小编来为大家解答新518互游透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里...
今日重磅消息“乐暴延边麻将.到... 您好:乐暴延边麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款...