shell脚本之数组
一、定义数组
数组名=(元素1 元素2 元素3)
Bash Shell只支持一维数组,不支持多维数组。
二、打印数组
echo ${name[*]} # "显示所有数组的元素" echo ${name[@]} # "显示所有数组的元素" echo ${name[0]} # "显示下标为0的元素,默认从0开始" echo ${name[3]} # "显示下标为3的元素" echo ${#name[@]} # "显示数组元素数量"
三、数组元素赋值
1、通过下标赋值,下标有值则覆盖,没有值则新增
#!/bin/bash name[0]=01 name[2]=02 name[3]=03 echo ${name[@]} echo ${name[1]} echo ${name[2]} # ~~~~~~~~~~~~~~~~~ #!/bin/bash name=(01 02 03 04 05 06) echo ${name[@]} name[1]="二" name[6]="六" echo ${name[@]}
2、通过键值对的方式赋值
通过访问键,得到对应的值。
#!/bin/bash name=([1]=01 [2]=02 [3]=03) echo ${name[1]} echo ${name[3]}
3、动态定义数组变量
可以将一些Linux命令嵌入其中,这样可以遍历数组元素,也可以只要其中的某个元素。
[root@4-232 question]# name=($(ls ./)) [root@4-232 question]# echo ${name[@]} access.log nohup.out question.sh test1.sh test.sh
四、遍历数组
1、利用${name[@]}遍历所有数组元素
#!/bin/bash name=(01 02 03 04 05) for i in ${name[@]} do echo $i done
2、通过下标遍历数组所有元素
#!/bin/bash name=(01 02 03 04 05) for n in {0..4} do echo ${name[$n]} done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!