表达后:
command1 | command2
我可以通过${PIPESTATUS [0]}检索第一个命令退出状态
表单中是否有等效表达式:
command3 && command4 || command5
我想检索command3的exitcode:
command3 && command4 || command5
retval=${SHORTCIRCUIT[0]} # how to get this value?
最好不要创建临时文件.
最佳答案 详细说明devnull的方法导致
{ c3=0; command3 || c3=$? && false; } && command4 || command5
echo $c3
.
因为每个命令都可以替换
{ c=0; command || c=$? && false; }
(如果有条件地执行c最初未设置),这很容易扩展.