189 8069 5689

shell数组的用法

变量:存储单个元素的内存空间:
数组(多个连续的内存空间):存储多个元素的连续的内存空间:

专业领域包括成都网站设计、网站建设、商城网站制作、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。

数组名:
  索引:编号从0开始,属于数值索引;
  注意:索引也可支持使用自定义的格式,而不仅仅是数值格式:
  bash的数组支持稀疏格式
  引用数组中元素:${ARRAY_NAME[INDEX]}

声明数组:
  declare -a ARRAY_NAME
  declare -A ARRAY_NAME:关联数组:kv

数组元素的赋值:
  (1)一次只赋值一个元素:
     ARRAY_NAME[INDEX]=VALUE
     #weekdays[0]=”Sunday”
     #weekdays[4]=”Thursday”

  (2)一次赋值全部元素:
     ARRAY_NAME=(“VAL1”,”VAL2”,”VAL3”,...)
  (3)只赋值特定元素:
     ARRAY_NAME=([0]=”VAL1” [3]=”VAL2” ...)
  (4)read -a ARRAY

引用数组中的某个元素:

  ${ARRAY_NAME[INDEX]}
  注意:省略[INDEX]表示引用下标为0的元素

显示数组中所有元素:

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

统计数组的长度(数组中元素的个数):
  ${#ARRAY_NAME[*]},${#ARRAY_NAME[@]}

引用数组中的元素:
  依次取出数组中所有元素:${ARRAY[@]}或者${ARRAY[*]}

数组切片:

  取出数组中指定长度的元素:${ARRAY[@]:offset:number}:也叫做数组切片
  offset:要跳过的元素个数
  number:要取出的元素个数
  例 :#echo ${weekdays[@]:1:2}
 

  取出偏移量之后的所有元素:${ARRAY[@]:offset}
  #echo ${weekdays[@]:1}
向数组中追加元素:
  ARRAY[${#ARRAY[*]}]
删除数组中的某元素:
  unset ARRAY[INDEX]
关联数组:
  declare -A ARRAY_NAME
  ARRAY_NAME=([index_name]=’val1’ [index_name2=’val2’ ...])


分享名称:shell数组的用法
分享网址:http://cdxtjz.cn/article/iicsig.html

其他资讯