当查询列表并将值放入变量并尝试在另一个脚本中使用该变量时,它会获得所需的格式。
此脚本的输出将是ID的逗号分隔字符串,如:7c553435c1376c8f5f020fcee0b8ef51,7d427dd75235bf513286d3210e1bd787
回声$ cilist 7c553435c1376c8f5f020fcee0b8ef51,7d427dd75235bf513286d3210e1bd787=>做回声时没有引号
我收到错误,因为它是围绕变量的单引号:
-cis'" 7c553435c1376c8f5f020fcee0b8ef51,7d427dd75235bf513286d3210e1bd787"'
我尝试了几种语法方法,但继续为第二个脚本输入错误的输入。或者我的前后没有引号或引号,如'"
。
对于正确语法的任何帮助或反馈都将不胜感激。
答案 0 :(得分:0)
shell将引号字符视为特殊字符。对于双引号("
),它将封闭的数据视为命令的单个参数。如果输入中包含空格(或其他shell分隔符标记),这将非常有用。但是,当为命令提供参数时,将删除引用。
您可以尝试使用反斜杠(\
)来逃避双引号。但是,您可能仍希望用双引号括起所有内容,$cilist
输入需要引用。
script.sh -cis "\"$cilist\""