bash是否有一个不会短路的布尔和/或运算符?
发布时间:2020-12-15 21:14:47 所属栏目:安全 来源:网络整理
导读:我希望能够始终执行validateA和validateB: function validateA() { echo "A [ok]" return 0}function validateB() { echo "B [ok]" return 0}if ! validateA | ! validateB; then echo "validation [fail]" exit 1else echo "validation [ok]" exit 0fi 解
我希望能够始终执行validateA和validateB:
function validateA() { echo "A [ok]" return 0 } function validateB() { echo "B [ok]" return 0 } if ! validateA | ! validateB; then echo "validation [fail]" exit 1 else echo "validation [ok]" exit 0 fi 解决方法
您可以随意调用它们并捕获返回值:
function validateA() { echo "A [fail]" return 1 } function validateB() { echo "B [ok]" return 0 } validateA ; vA=$? validateB ; vB=$? if [[ $vA -ne 0 || $vB -ne 0 ]] ; then echo "validation [fail]" exit 1 else echo "validation [ok]" exit 0 fi 这输出: A [fail] B [ok] validation [fail] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |