gwuj 发表于 2018-8-16 13:18:43

shell 中的 特殊变量类型数组

  shell 中两种数据类型:一是数值类型,二是字符串类型;虽然shell本身是弱类型的,但也可以这么区分。
  如果我们需要在shell中一个变量中存储多个值,那么就需要一个更方便的类型数组
  数组在shell中是用括号括起来每个值之间用空格隔开就定义了一个数组
  a=(1 2 3 4 5)
  a=("a" "b" "c" "d" "e")
  a=(1 "a" 2 "b")
  都是可以的
  数组的运用
  得到数组的长度:${#a
[*]} 或者${#a[@]}
  得到数组中所有的值:${a
[*]} 或者${a[@]}
  得到数组中指定值:${a}#digit表示数字下标,也就是数组每个元素的位置,从0开始计数
  得到数组中的连续的位置的值:${a
[*]:0:3}这里是使用了字符串截取的方法 ${var:开始位置:长度}的方法
  修改某个数组中值a[下标]=值
  利用for循环遍历数组
  foriin${a[@]}; do
  echo i
  done
  删除数组中某一个值
  unset a[下标]

页: [1]
查看完整版本: shell 中的 特殊变量类型数组