linux bc 数组变量,数组和变量之间的关系及如何灵活运用数组

"本文详细介绍了Bash shell中数组的概念,包括其作为存储多个元素连续内存空间的特性,以及如何声明、赋值和引用数组元素。数组名用于标识数组的起始地址,索引从0开始。还讲解了如何通过${ARRAY_NAME[INDEX]}
摘要由CSDN通过智能技术生成

什么是数组?

数组:存储多个元素的连续的内存空间,相当于多个变量的集合

什么是变量?

变量即是存储单个元素的内存空间

如果整个数组只有一个名字;数组名是数组的标识;也是数组所指向的存储多个元素的连续的内存空间开始地址的标识;

数组索引定义

从 0 开始(第一个数组元素);到 N 结束

引用某个数组元素时,数组名+【索引】

格式:${ARRAY_NAME[INDEX]} 必须用这样的格式,否则无法识别索引, ARRAY_NAME 会被当成变量或数组处理。

Bash-4 及之后的版本,支持自定义索引格式,而不仅仅是数字格式 此类数组称之为“关联数组”

声明数组的方法:

1. Declare -a NAME 声明索引数组

Declare -A NAME 声明关联数组

一次只赋值一个元素方法

ARRAY_NAME[INDEX]=value

一次赋值全部元素

ARRAY_NAME=(“VAL1” “VAL2” “VAL3”)

只赋值特定元素

ARRAY_NAME=([0]=”VAL1” [3]=”VAL4”……)

只赋值特定元素

Read -a ARRAY_NAME

如何引用数组中的元素?

${ARRAY_NAME[INDEX]}

引用时,如果只给数组名,默认标识引用下标为 0 的元素

如何引用数组中所有元素?

${ARRAY_NAME[]}或者${ARRAY_NAME[@]}

引用数组中所有元素的个数

${#ARRAY_NAME[]}或者${#ARRAY_NAME[@]}

引用数组中第一个元素的字符长度

${#ARRAY_NAME}

如何将数组元素切片:

${ARRAY_NAME[@]:offset:number}

Offset: 要跳过的元素个数

Number:要取出的元素个数

取偏移量之后的所有元素

${ARRAY_NAME[@]:offset

原创文章,作者:晓楠,如若转载,请注明出处:http://www.178linux.com/76738

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值