我对以下bash行感到困惑,由其他人写的:
return -1 || exit -1
这是什么意思?我理解||
构造意味着如果第一部分(在这种情况下,return -1
)失败(即返回非零代码),则执行第二部分(exit -1
)。同样奇怪的是,这个陈述不是任何函数的一部分,而是在剧本的主体中。
我感谢有人向我解释这一点。
答案 0 :(得分:5)
此处,return
是在脚本为source
-ed时退出的技巧,而exit
通常会退出shell。
所以基本上上面的条件是退出脚本的执行循环,无论它是source
-ed还是已执行。
另请注意,bash
不支持负回报值。在这两种情况下,您将获得255的退出状态,而不是-1。