shell脚本入门到实战(四)- 数组

简介: shell脚本入门到实战(四)- 数组


1.shell格式化输出

0.什么是数组

数组可以让用户一次赋予多个值,需要读取数据时只需通过索引调用就可以方便读出了。

shell中的数组分两种: 普通数组 和 关联数组。

1.普通数组

数组名称=(元素1 元素2 元素3 …)

①数组赋值方式

一次附一个值
变量名=变量值
array[0]=v1
array[1]=v2
array[3]=v3
一次附多个值
array=(var1 var2 var3 var4)
array1=(`cat /etc/passwd`)      //将文件中每一行赋值给array1数组
array2=(`ls /root`)
array3=(harry amy jack "Miss zhang")
array4=(1 2 3 4 "hello world" [10]=linux)

②数组取值

${array[i]}  i表示元素的索引
使用@ 或 * 可以获取数组中的所有元素:
获取第一个元素
echo ${array[0]}
echo ${array[*]}  或 echo ${array4[@]} 获取数组里的所有元素
echo ${#array[*]}     获取数组里所有元素个数
echo ${!array[@]}     获取数组元素的索引索引
echo ${array[@]:1:2}    访问指定的元素;1代表从索引为1的元素开始获取;2代表获取后面几个元素

2.关联数组语法

一次赋一个值

declare -A ass_array1
ass_array1[name]='basism'
ass_array1[age]=18

一次附多个值

declare -A ass_array2
ass_array2=([name]='ayitula' [age]=20)

查看关联数组

关联数组取值

[root@localhost~]# echo ${asso_array1[linux]}
one

3.普通数组和关联数据的区别

普通数据的索引是数字: 0,1,2…

关联数组的索引是自定义的(自我感觉:好像map啊



相关文章
|
2天前
|
运维 监控 Shell
利用Shell脚本编写局域网监控软件:实时监测主机连接情况
本文介绍了如何使用Shell脚本创建一个局域网监控工具,以实时检查主机连接状态。脚本包括扫描IP地址范围检测主机可达性及使用`netstat`监控ESTABLISHED连接。此外,还展示了如何每60秒将连接数数据自动提交到指定网站API,以便实时跟踪网络活动。这个自动化监控系统有助于提升网络安全性和故障排查效率。
12 0
|
3天前
|
Shell
Shell脚本之流程控制语句
Shell脚本之流程控制语句
|
4天前
|
JSON 运维 监控
训练shell常用脚本练习(三)
【4月更文挑战第14天】shell代码训练(三)
16 1
|
7天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
137 0
|
8天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
124 0
|
11天前
|
弹性计算 Shell Linux
ecs服务器shell常用脚本练习(六)
【4月更文挑战第4天】shell代码训练(六)
108 0
|
16天前
|
弹性计算 Shell 应用服务中间件
ecs服务器shell常用脚本练习(四)
【4月更文挑战第4天】shell代码训练(四)
96 0
|
18天前
|
人工智能 机器人 Shell
【shell】shell数组的操作(定义、索引、长度、获取、删除、修改、拼接)
【shell】shell数组的操作(定义、索引、长度、获取、删除、修改、拼接)
|
18天前
|
Shell
【shell】实时查看网卡流量脚本
【shell】实时查看网卡流量脚本
|
18天前
|
Shell Linux
Linux的shell入门教程shell脚本入门教程
Linux的shell入门教程shell脚本入门教程
15 0