Bash——反引号内的双引号
Posted
技术标签:
【中文标题】Bash——反引号内的双引号【英文标题】:Bash -- Double quotes within Backtick 【发布时间】:2011-11-17 13:53:02 【问题描述】:我在 bash 脚本中使用以下条件:
if `grep -q "$ACTION_LABEL Action" "$OVERRIDE_ACTIONS"`; then
....
fi
它基本上可以工作。除非 $OVERRIDE_ACTIONS 中路径的任何部分包含空格,否则 grep 将失败。如何让它与包含空格的路径一起使用>
【问题讨论】:
【参考方案1】:去掉反引号:
if grep -q "$ACTION_LABEL Action" "$OVERRIDE_ACTIONS"; then
...
fi
为什么? grep
将返回一个值 0
如果它成功地找到了你的模式的出现,或者 1
如果它失败了。如果条件评估为0
,则将执行if
语句的主体。
【讨论】:
以上是关于Bash——反引号内的双引号的主要内容,如果未能解决你的问题,请参考以下文章
如何删除多余的双引号,而不是使用bash脚本在一行文本中打开和关闭双引号