如何调用带有VAR的脚本被解释为多个参数



我有一个var,它是一个包含几个单词的字符串:

my_var="foo bar baz"

我想打电话给另一个脚本并通过my_var。我希望第二个脚本看到三个参数foo bar baz,而不是单个参数"foo bar baz"

这是如何完成的?这是目前的:

text_output=$( /bin/bash /the/second/script.sh ${my_var} )

这个第二个脚本期望任何数量的参数。目前,它说它正在得到一个论点。语法${}可以是问题吗?

不要使用普通参数来存储多个参数;这就是阵列的目的。

declare -a my_arr    # optional
my_arr=( foo bar baz )
text_output=$( /bin/bash /the/second/script.sh "${my_arr[@]}" )

您可以无引用的传递,以便将其扩展。示例:

my_var="foo bar baz"
fn() { echo $#; }
fn "$my_var"
1
fn $my_var
3

相关内容

  • 没有找到相关文章