shell 数组的基本使用

定义并赋值数组:把值放在括号里,值和值之间用空格分隔。

$my_var=(one two three four)
$

使用数组:数组的索引是从0开始的。

$echo ${my_var[0]} #引用单个元素
$one
$echo ${my_var[*]} #引用整个数组元素
$one two three four
$

删除数组某个元素:用unset命令来删除某个索引的数组元素,其实只是把那个索引的数组元素清空,其他的索引和数组元素保持不变。

$unset my_var[2]
$echo $my_var[2]
$
$echo ${my_var[*]}
$one two four
$echo $my_var[3]
$four  #数组索引为3的元素值依然保持不变

bash系统环境变量中很多都使用了数组(e.g.BASH_VERSINFO).

$ echo ${BASH_VERSINFO[*]}
4 1 2 1 release x86_64-redhat-linux-gnu
$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当我们使用Shell时,经常需要对一个或多个元素进行操作。这些元素可以是文件、目录、字符串、数字等,通常使用数组来组织它们。 在Shell中,数组可以使用以下语法进行定义: ```bash array_name=(element1 element2 ... elementN) ``` 其中,`array_name`是数组的名称,`element1`、`element2`、...、`elementN`是数组中的元素,用空格分隔。 数组元素可以通过下标来访问,下标从0开始,可以是一个整数或一个表达式,使用`${array_name[index]}`语法进行访问,例如: ```bash my_array=(apple banana "cherry pie" "dollar 100") echo ${my_array[0]} # 输出: apple echo ${my_array[1]} # 输出: banana echo ${my_array[2]} # 输出: cherry pie echo ${my_array[3]} # 输出: dollar 100 ``` 可以使用`${#array_name[@]}`来获取数组的长度,`${!array_name[@]}`来获取数组中所有下标的列表,例如: ```bash echo ${#my_array[@]} # 输出: 4 echo ${!my_array[@]} # 输出: 0 1 2 3 ``` 可以使用循环语句来遍历数组中的所有元素,例如: ```bash for element in ${my_array[@]} do echo $element done ``` 上述代码会输出数组`my_array`中的所有元素。可以使用`{start..end..increment}`的语法来生成一个整数序列,例如: ```bash for i in {0..9..2} do echo $i done ``` 上述代码会输出0、2、4、6、8这5个整数。可以使用`unset`命令来删除数组中的某个元素,例如: ```bash unset my_array[1] ``` 上述代码会删除数组`my_array`中下标为1的元素(即`banana`)。 这是Shell数组基本用法,希望能对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值