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

bash 中 if-then 与 && 的区别

时间:12-14来源:作者:点击数:
城东书院 www.cdsy.xyz

有时候为了方便,我们会把

if condition;then
    statement
fi

简写成

condition && statement

但是这两种写法其实并不完全等价,最大的不同点在于它们的返回值是不同的。我们可以比较一下:

if [ "1" = "0" ];then
    :
fi
echo "if 语句返回值: $?"

[ "1" = "0" ] && statement
echo "&& 语句返回值: $?"
if 语句返回值: 0
&& 语句返回值: 1

因此,当脚本开启 errexit 或者在写 travis-ci 的 script 部分时要注意一下这方面的差别。

城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐