shell中数组的使用方法

2018年5月4日 评论

一、声明数组

数组的声明有以下几种方式:

  • 直接赋值:arr[0]="0" arr[1]="1" arr[2]="2"
  • declare声明:declare -a arr2
  • 小括号空格:arr3=("1" "2" "3")
  • 引号空格:arr4="1 2 3"
  • 混合声明:arr5=([0]="0" [1]="1" [2]="2")

引号空格法在某些时候可能会引起错误,更常用小括号空格法。

二、遍历数组

遍历数组有两种方式,一种是标准的for循环,一种是for..in形式。

输出:

注意事项

对于以上面第四种方式(引号空格法)定义的数组在使用这两个for循环时结果有所不同。

输出:

可见,使用引号空格法构造的数组在使用标准for循环时把数组当成了一个元素,而for..in形式则正确输出。

三、其他用法

3.1 获取数组长度

获取数据长度有两种形式:${{ '{#' }}arr[@]}${{ '{#' }}arr[*]},通过引号空格法创建的数组长度为1

3.2 删除数组和数组元素

删除数组元素

输出:

删除数组

3.3 切片

shell数组有类似python和golang中的数组切片功能:

输出:

历史上的今天
五月
4
[leetcode-shell]192-统计词频 Shell

[leetcode-shell]192-统计词频

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/word-frequency 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处...
[leetcode-shell]195-第十行 Shell

[leetcode-shell]195-第十行

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/tenth-line 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 一、...
shell的比较运算符 Shell

shell的比较运算符

shell中用来比较大小的运算符有:eq, ne, gt, lt, ge, le 具体为: -eq:等于 -ne:不等于 -gt:大于 -lt:小于 -ge:大于等于 -le: 小于等于于
匿名

发表评论

匿名网友