在一行中测试命令退出代码的快捷方式

问题描述 投票:0回答:1

如何测试命令的退出代码是否等于给定值?我正在寻找与以下内容等效的内容,而无需先运行命令并检索

$?
:

diff a.txt b.txt
if [ $? = 2 ]; then
  echo diff failed
  exit 2
fi

这与以下问题不同,因为该问题询问检查退出代码是否等于特定值而不是零或不为零:

bash
1个回答
0
投票

退出代码没有大于 1 的快捷方式。不过你可以这样写:

if² diff a.txt b.txt; [ $? = 2 ]; then
  echo diff failed
  exit 2
fi
© www.soinside.com 2019 - 2024. All rights reserved.