📅  最后修改于: 2023-12-03 15:38:26.620000             🧑  作者: Mango
在编写 shell 脚本时,有时需要从用户处获取数组类型的输入。本文将介绍几种获取 shell 脚本中数组输入的方法。
第一种方法是直接在脚本中输入数组。例如:
#!/bin/bash
# 直接输入数组
arr=("apple" "banana" "orange" "pear")
# 输出数组元素
for i in "${arr[@]}"
do
echo $i
done
在上述脚本中,直接在脚本中定义了一个数组,并使用了 ${arr[@]}
来遍历数组元素,输出数组元素。
第二种方法是使用 read
命令输入数组。例如:
#!/bin/bash
# 通过 read 命令输入数组
arr=()
echo "Please enter the elements of the array:"
while read element
do
arr+=("$element")
done
# 输出数组元素
echo "The elements of the array are:"
for i in "${arr[@]}"
do
echo $i
done
在上述脚本中,使用了 read
命令输入数组元素,并将其添加到数组 arr
中。使用 ${arr[@]}
遍历数组元素,输出数组元素。
第三种方法是通过命令行参数传递数组元素。例如:
#!/bin/bash
# 通过命令行参数输入数组
arr=("$@")
echo "The elements of the array are:"
for i in "${arr[@]}"
do
echo $i
done
在上述脚本中,使用 $@
获取命令行参数传递的数组元素,并遍历输出数组元素。
第四种方法是从文件中读取数组元素。例如:
#!/bin/bash
# 从文件中读取数组
arr=($(cat path/to/file))
echo "The elements of the array are:"
for i in "${arr[@]}"
do
echo $i
done
在上述脚本中,使用 cat
命令将文件的内容读取到一个字符串中,并使用 $()
将字符串解析成数组。然后使用 ${arr[@]}
遍历数组元素,输出数组元素。
以上就是在 shell 脚本中获取数组输入的几种方法。通过这些方法,您可以更方便地编写 shell 脚本,处理数组类型的输入。