我在bash脚本中使用以下条件:
if `grep -q "${ACTION_LABEL} Action" "${OVERRIDE_ACTIONS}"`; then
....
fi
它基本上有效。除非$ {OVERRIDE_ACTIONS}中的路径的任何部分包含空格,否则grep将失败。如何使用包含空格>
的路径答案 0 :(得分:8)
删除反引号:
if grep -q "${ACTION_LABEL} Action" "${OVERRIDE_ACTIONS}"; then
...
fi
为什么呢? grep
如果成功找到您的模式,则会返回0
的值,如果失败,则会1
。如果条件评估为if
,则将执行0
语句的主体。