Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux shell脚本引号消失_Linux_Shell - Fatal编程技术网

Linux shell脚本引号消失

Linux shell脚本引号消失,linux,shell,Linux,Shell,我正在尝试编写一个shell脚本,并获取输入参数,如: /测试abc def ghi 如果脚本中有一个echo$*,它会列出参数,但引号会消失,如 /测试abc“def ghi”-->abc def ghi 我不想用反斜杠运行命令,因为它可以解决这个问题echo$2不会解决它里面的报价,比如/test abc“def ghi”jkl“mno” 还有别的办法解决吗?谢谢:)您可以通过将双引号括在单引号中来实现,如下所示: ./test abc '"def ghi"' 说明: 由单引号括起的所有内

我正在尝试编写一个shell脚本,并获取输入参数,如:

/测试abc def ghi

如果脚本中有一个
echo$*
,它会列出参数,但引号会消失,如

/测试abc“def ghi”
-->abc def ghi

我不想用反斜杠运行命令,因为它可以解决这个问题
echo$2
不会解决它里面的报价,比如
/test abc“def ghi”jkl“mno”


还有别的办法解决吗?谢谢:)

您可以通过将双引号括在单引号中来实现,如下所示:

./test abc '"def ghi"'
说明:


由单引号括起的所有内容都由shell解释为字符串文本。以下是有关的详细信息。

您可以通过将双引号括在单引号内来完成,如下所示:

./test abc '"def ghi"'
说明:


由单引号括起的所有内容都由shell解释为字符串文本。以下是有关的详细信息。

您也可以使用单引号:

./test abc '"def ghi"'

也可以使用单引号:

./test abc '"def ghi"'

哦,是的。非常感谢:)另一个问题,如果里面有复杂的东西,怎么处理?像
“45 56 45”78\][s[df\s\d”\n\''\5 6'
我不确定它是否能解决你的问题,但另一种处理复杂引用的方法是使用哦,是的。非常感谢:)另一个问题,如果它里面有复杂的东西,如何处理?像
“45 56 45”78\][s[df s\d”\n\''\5 6““
我不确定它是否能解决您的问题,但另一种处理复杂引用的方法是使用为什么您认为需要保留文字引号?您使用2美元做什么?为什么您认为需要保留文字引号?您使用2美元做什么?