您当前的位置:首页 > 计算机 > 系统应用 > Linux

sh 比较两字符串时提示 unexpected operator

时间:12-14来源:作者:点击数:

症状

sh -c '[ "${TRAVIS_PULL_REQUEST}" == "false" ] && ./scripts/badge.sh'

提示

[: 1: false: :Unexpected operator

原因

由于archlinux中 sh 其实是 bash 的软链接,因此之前一直没有留意。

其实 sh 中比较两个字符串是需要使用 = 而不是 ==

因此需要改成

sh -c '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && ./scripts/badge.sh'

或者用 [[]] 代替 []

sh -c '[[ "${TRAVIS_PULL_REQUEST}" == "false" ]] && ./scripts/badge.sh'
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐