bash if [ -n "$输出变量" ]
line=$(grep "# rvm line" ~/.bashrc)
if [ ! -n "$line" ]; then
echo "found"
else
echo "not found"
fi
我第一行的引用有什么问题吗?
编辑:问题是 set -o errexit
,我在脚本中使用它。我认为 -n
被视为错误,退出以下进程。我怎样才能克服这个问题,保持错误检查? (-n 的替代品也可以工作)。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您不打算将
$line
用于除了测试它是否为空之外的任何其他用途,那么您不妨这样做:If you don't plan to use
$line
for anything else than testing if it's empty or not, then you might as well do this:没什么
引号中没有明显的错误吗?您没有得到预期的结果吗?
好的,你的 if 条件是错误的 - 如果它的目的是检查 grep 语句是否返回了某些内容。我会把它作为一个线索,让你自己去弄清楚。祝你好运
Nothing
Nothing is apparently wrong with the quotes? Are you not getting expected result ?
ok,your if condition is wrong - if it was intended to check that something was returned by the grep statement. I will leave that as a clue for yourself to figure out. Goodluck