【问题标题】:SHELL add double quotes at the beginning and end of specific variable [duplicate]SHELL在特定变量的开头和结尾添加双引号[重复]
【发布时间】:2019-04-25 23:36:27
【问题描述】:

我在 shell 脚本中有一个变量,它在变量 $var1 中取一个值。 如果我这样做echo $var1,我会得到例如波士顿的价值。 我想要的值是"Boston"

我尝试了几个案例:

var1=""$var1""
var1="""$var1"""

但在这两种情况下,我都得到了'$var1' 但我想要"Boston" 请不要提及其中包含波士顿的解决方案。如果您只能在整个脚本中使用var1,我将不胜感激,这样可以更清楚! “波士顿”只需要作为脚本执行的输出和变量 var1 的初始化。

谢谢

【问题讨论】:

  • 试试 var1="\"Boston\""
  • 请不要提及具体数值!!!
  • 我想让它更通用,而不是具有特定价值。改用 var1
  • 你能说得更具体点吗?这也适用于变量,只需在回显中转义你想要的 qutes.. a="\"$var1\""
  • 那里少了一个双引号 :) .. 使用 var2="\"$var1\""

标签: bash shell variables double-quotes


【解决方案1】:

你需要用反斜杠转义引号

var1=Boston
var1=\"${var1}\"
echo $var1
"Boston"

此外,花括号是变量的安全符号

【讨论】:

  • 效果很好。谢谢!!!还有一个问题:如果我想得到这样的结果:“波士顿”我需要改变什么?谢谢。我会在几分钟内接受答复
  • 你只需要改变一个符号,单引号的转义方式与双引号相同:\" -> \'
  • 投反对票:Not 引用echo 的论点会让你做各种奇怪的复杂问题,这些问题很容易解决。
  • function stpu() { git stash push -u -m \""${@}"\" } 不适合我。
猜你喜欢
  • 1970-01-01
  • 2021-11-02
  • 1970-01-01
  • 1970-01-01
  • 2017-11-22
  • 2021-12-21
  • 1970-01-01
  • 1970-01-01
  • 2012-02-09
相关资源
最近更新 更多