📜  Shell 脚本中的数组基础 |设置 1(1)

📅  最后修改于: 2023-12-03 14:47:26.549000             🧑  作者: Mango

Shell 脚本中的数组基础 |设置 1

在 Shell 脚本中,数组是一种非常常见的数据类型,它可以在一个单独变量中存储多个值,这使得它成为了处理大量数据的重要工具。在这里,我们将介绍如何定义和操作 Shell 中的数组。

定义数组

要定义一个 Shell 数组,需要使用如下语法:

array_name=(value1 value2 ... valuen)

其中,array_name 是数组的名称,value1valuen 是需要存储在数组中的值。请注意,每个值都需要用空格分隔。例如:

my_array=(apple banana "cherry pie" date)

在这个例子中,我们定义了一个名为 my_array 的数组,并将 applebananacherry piedate 存储到数组中。

获取数组中的值

要获取数组中单个元素的值,需要使用如下语法:

${array_name[index]}

其中,array_name 是数组的名称,index 是需要获取值的元素下标。下标从 0 开始。例如:

echo ${my_array[0]} # 输出 "apple"
echo ${my_array[2]} # 输出 "cherry pie"

还可以使用 ${array_name[*]}${array_name[@]} 来获取整个数组的值,这两种方法完全相同。例如:

echo ${my_array[*]} # 输出 "apple banana cherry pie date"
echo ${my_array[@]} # 输出 "apple banana cherry pie date"
获取数组的长度

要获取数组的长度,需要使用如下语法:

${#array_name[@]}

其中,array_name 是需要获取长度的数组名称。例如:

echo ${#my_array[@]} # 输出 4
修改数组中的值

可以像修改普通变量一样修改数组中的元素的值。例如:

my_array[1]="orange"
echo ${my_array[1]} # 输出 "orange"
echo ${my_array[*]} # 输出 "apple orange cherry pie date"
删除数组中的值

要删除数组中的元素,可以使用 unset 命令。例如:

unset my_array[3] # 删除第四个元素
echo ${my_array[*]} # 输出 "apple orange date"
循环遍历数组

要循环遍历数组,可以使用 for 循环加上 ${array_name[@]} 的语法。例如:

for item in ${my_array[@]}
do
    echo $item
done

这个循环将会逐个输出数组中的所有元素。

以上就是 Shell 脚本中的数组基础。如果您还没有开始使用数组,那么赶紧尝试一下吧!