在 bash 脚本中,我有一组参数要传递给另一个 bash 脚本。我该怎么做? [复制]
Posted
技术标签:
【中文标题】在 bash 脚本中,我有一组参数要传递给另一个 bash 脚本。我该怎么做? [复制]【英文标题】:In a bash script, I have an array of arguments I want to pass in order to another bash script. How would I do this? [duplicate] 【发布时间】:2021-11-02 00:13:38 【问题描述】:基本上,我编写了一个 bash 脚本来充当其他脚本的包装脚本。这个想法是传递您想要运行的脚本的名称及其参数,然后我的脚本设置一些全局变量并确保您被允许使用给定的输入,然后使用给定的参数调用脚本。那么如何使用 bash 代码中的给定参数调用作为参数给出的脚本呢?
【问题讨论】:
sh
没有有数组。为什么这个标签是 sh?
顺便说一句,要真正复制数组中的内容,请参阅***.com/a/1063367/14122。链接的重复项用于传递参数列表(使用"$@"
),而不是实际将数组扩展至其上。
【参考方案1】:
你收到的参数在"$@"
;你可以用它来传递它们。
#!/bin/bash
script=$1
shift
for x in "$@"; do
# validate remaining arguments
done
"$script" "$@"
【讨论】:
...已经有两个精确的链接副本,不是吗? 细微差别(无论如何,IMO):其中一个参数是要运行自身的脚本,而不是传递给硬编码命令的参数。以上是关于在 bash 脚本中,我有一组参数要传递给另一个 bash 脚本。我该怎么做? [复制]的主要内容,如果未能解决你的问题,请参考以下文章