【发布时间】:2011-11-17 13:53:02
【问题描述】:
我在 bash 脚本中使用以下条件:
if `grep -q "${ACTION_LABEL} Action" "${OVERRIDE_ACTIONS}"`; then
....
fi
它基本上可以工作。除非 ${OVERRIDE_ACTIONS} 中路径的任何部分包含空格,否则 grep 将失败。如何让它与包含空格的路径一起使用>
【问题讨论】:
我在 bash 脚本中使用以下条件:
if `grep -q "${ACTION_LABEL} Action" "${OVERRIDE_ACTIONS}"`; then
....
fi
它基本上可以工作。除非 ${OVERRIDE_ACTIONS} 中路径的任何部分包含空格,否则 grep 将失败。如何让它与包含空格的路径一起使用>
【问题讨论】:
去掉反引号:
if grep -q "${ACTION_LABEL} Action" "${OVERRIDE_ACTIONS}"; then
...
fi
为什么? grep 将返回一个值 0 如果它成功地找到了你的模式的出现,或者 1 如果它失败了。如果条件评估为0,则将执行if 语句的主体。
【讨论】: