如何在Bash脚本中传递带空格的命令行参数

如何在Bash脚本中传递带空格的命令行参数,bash,command-line-arguments,Bash,Command Line Arguments,假设有一个脚本s1,我需要传递带有值foo bar的参数$1,其中包含空格。这是可以做到的 ./s1“富吧” 但是,当我想在另一个脚本(比如说s2)中运行上述命令时,我应该如何放置它?如果我把它放在上面,foobar将被解释为两个参数(到s1),而不是一个。您可以尝试引用$1: ./s2 "$1" 那么: ./s1 foo\ bar 这样行吗?使用单引号 /script“这是一行” 考虑变量替换使用双引号 /script“这是一行”您介意解释一下s2的样子吗?我不需要将参数传递给s2,但传递

假设有一个脚本
s1
,我需要传递带有值
foo bar
的参数
$1
,其中包含空格。这是可以做到的

./s1“富吧”


但是,当我想在另一个脚本(比如说
s2
)中运行上述命令时,我应该如何放置它?如果我把它放在上面,
foobar
将被解释为两个参数(到s1),而不是一个。

您可以尝试引用
$1

./s2 "$1"
那么:

./s1 foo\ bar
这样行吗?

使用单引号

/script“这是一行”

考虑变量替换使用双引号


/script“这是一行”

您介意解释一下
s2
的样子吗?我不需要将参数传递给
s2
,但传递给
s1
@Richard,我不太确定您在问什么。你能澄清一下吗?谢谢你的建议。我没有足够的声誉来评论这篇文章。下次我会记住这一点。