如何在命令行中传递分组参数

问题描述 投票:0回答:1

我想传递三组参数,例如:

sh run.sh [1,4,6,8] [3,6,10,14] [8,16,32]

如果可能,那么如何在脚本中访问参数?

bash parameters grouping
1个回答
4
投票

您可以将逗号分隔的数字作为参数传递给脚本:

bash run.sh "1,4,6,8" "3,6,10,14" "8,16,32"

请注意我使用bash而不是sh能够使用bash shell而不是posix sh

然后在run.sh脚本中,您可以使用IFS=, read -ra将每个参数拆分为shell数组:

IFS=, read -ra argarr1 <<< "$1"
IFS=, read -ra argarr2 <<< "$2"
IFS=, read -ra argarr3 <<< "$3"

并使用每个数组:

for i in "${argarr1[@]}"; do
    echo "$i"
done
© www.soinside.com 2019 - 2024. All rights reserved.