Bash数组与字典使用
需求#
编写bash脚本希望用到更加灵活的数据格式。
数组#
使用index索引,直接调用返回第一个元素,支持-1检索,不存在的index返回空。
举例:将十进制数转换为十六进制。
declare -a HEX # 可以省略
HEX=(0 1 2 3 4 5 6 7 8 9 A B C D E F)
echo ${HEX[15]} # F
字典
使用key索引,直接调用返回空,不支持index索引,不存在的key返回空。
据例:根据编号查找名称,不存在则返回编号。
declare -A nickname # 不能省略
nickname=(
['1-1']="张三"
['1-2']="李四"
['2-1']="王五"
)
name=${nickname[$num]}
name=${name:-$num} # 查不到直接返回num
参考
dictionary - How to define hash tables in Bash? - Stack Overflow
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2020-10-14 Docker容器文件系统位置