发现shell中的数组使用方法
— http://blog.fallseir.com/2008/10/array_in_shell/
$ arr=(123 34 3 5)
$ echo $arr // 默认获取第一个元素
> 123
$ echo ${arr[1]} // 通过下标访问
> 34
$ echo ${arr[@]} // 访问整个数组 ,@或者* 获取整个数组
> 123 34 3 5
$ echo ${#arr[@]} // 获取数组的长度(最大下标) ,#获取长度 数组中是最后一个下标
> 3
$ echo ${#arr[3]} // 获取字符串长度
> 1
$ echo ${arr[@]:1:2} // 切片方式获取一部分数组内容
> 34 3
$ echo ${arr[@]:2} // 从第二个元素开始
> 3 5
$ echo ${arr[@]::2} // 到第二个元素
> 123 34
参考 http://www.tech-recipes.com/rx/642/bash-shell-script-accessing-array-variables/
array 的模拟操作
– http://www.tech-recipes.com/rx/911/queue-and-stack-using-array/
push:
array=(”${array[@]}” $new_element)
pop:
array=(${array[@]:0:$((${#array[@]}-1))})
shift:
array=(${array[@]:1})
unshift
array=($new_element “${array[@]}”)
function del_array {
local i
for (( i = 0 ; i < ${#array[@]} ; i++ ))
do
if [ "$1" = "${array[$i]}” ] ;then
break
fi
done
del_array_index $i
}
function del_array_index {
array=(${array[@]:0:$1} ${array[@]:$(($1 + 1))})
}
分享到:
相关推荐
shell数组循环 测试shell数组,循环的例子: arr=(a b c) echo 所有的内容如下:${arr[@]} echo 数组的长度:${#arr[*]} for var in ${arr[@]} do echo 打印的内容:$var done 输出的内容如下: 以上...
在shell脚本中创建1-100的方法很多,那我在这里主要就说两种容易理解且方便的方法: 第一种方法: for i in {1..100} do echo $i done 使用{1..100}这种方式简单明了,大家也可以在linux命令模式下直接...
本文将详细介绍如何使用 Linux Shell 来找出一个包含多个一维数组的多维数组中的最大值和最小值。 #### 核心知识点: 1. **Shell 数组的定义与使用** 2. **Shell 脚本中的循环结构** 3. **条件判断与变量赋值** 4....
在Linux Shell中,数组的使用技巧包括创建、读取、赋值、删除以及一些特殊操作,如分片、替换等。 首先,创建数组非常简单。例如: ```bash a=(1 2 3 4 5) ``` 这创建了一个名为`a`的数组,包含五个元素。数组元素...
linux shell中的语法和普通编程语言 c/c++ java 的不太一样,平时用的不多,所以总是记不住,写脚本才会去查怎么用。 今天突然被问到数组怎么去遍历。平时写shell脚本也经常遍历数组,但是一下没答上来,被鄙视了。 ...
在Shell脚本编程中,有时我们...通过这样的方法,你可以有效地在Shell函数中传递和处理数组,避免只传递数组第一个元素的问题。这在编写复杂的Shell脚本或工具时尤其重要,因为它允许你更灵活地组织和管理数据结构。
这种方法适用于根据特定条件逐个添加元素到数组中。例如,在给定的示例中,为了计算从1到1000所有偶数的和,我们可以设置初始值`start=1`和`total=0`,然后使用while循环,每次迭代检查`start`是否为偶数(`[[ $(($...
**Shell数组** Shell也支持数组变量,可以存储多个值。例如: ```bash my_array=(apple orange banana) ``` 访问数组元素: ```bash echo ${my_array[0]} # 输出 apple ``` 增加数组元素: ```bash my_array+=(...
Shell脚本中的数组是一种非常实用的数据结构,它允许我们存储多个相关的值,并通过单个变量名来管理和操作这些...在实际应用中,根据需求选择合适的声明方式、遍历方法以及数组操作将极大地提升脚本的灵活性和实用性。
本篇文章将深入探讨Linux Shell数组的创建、读取、赋值以及一些特殊的使用技巧。 1. **数组定义**: 在Shell中,数组的定义非常直观。例如,创建一个包含1到5的数组可以这样写: ``` a=(1 2 3 4 5) ``` 这里的...
- **删除元素**:使用`unset`命令可以删除数组中的某个元素或整个数组。例如,`unset array[1]`会删除数组的第二个元素,`unset array`会删除整个数组。 - **获取某范围的元素**:通过`${数组名[@或*]:起始位置:...
关于linux数组定义,以及生成方法,请看:linux shell 动态生成 数组系列 seq使用技巧 。这里我主要说的是高效生成list 字符串,还有数组方法。 一、seq方法生成: [chengmo@centos5 shell]$ aNumList=$(seq ...
获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。 定义数组 在Shell中,用括号来表示数组,数组元素用“空格”符号分割开。定义数组的一般形式为: 代码如下:数组名=(值1 值2 … 值n)...
本文为大家介绍linxu shell中数组的相关知识,并举了很多例子供参考,包括数组的复制,计算,删除,替换等,是学习shell 数组的不可多得的好文章。 数组的声明: 1)array[key]=value # array[0]=one,array[1]=two2)...
本篇将详细讲解Linux Shell中的两种数组类型:序列数组和关联数组,并提供实例来帮助理解它们的使用方法。 1. **关联数组** 关联数组,也称为哈希表或字典,允许我们使用任意字符串作为索引来存储和检索值。在...
数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。 与大部分编程语言类似,数组元素的下标由0开始。 Shell 数组用括号来表示,元素用”空格”符号...
shell中数组的定义及遍历,先直接看示例: #!/bin/sh #定义方法一 数组定义为空格分割 arrayWen=(a b c d e f) #定义方法二 arrayXue[0]=m arrayXue[1]=n arrayXue[2]=o arrayXue[3]=p arrayXue[4]=q arrayXue[5]=r...