无声输出的方式,并提供明确的失败或命令的成功

时间:2018-03-17 05:44:09

标签: unix terminal stdout error-code

我希望运行一个命令jest并让它不记录任何内容,以及使用退出代码并给出明确的成功/失败单行消息。这怎么可能?

1 个答案:

答案 0 :(得分:0)

您可以将输出重定向到/dev/null并通过执行以下操作忽略STDERR:

command1 > /dev/null 2>&1 && command2 

您可以使用ls进行测试,例如:

ls non-existent > /dev/null 2>&1 && echo "success"

如果不打印任何内容(如果文件non-existent不存在),退出代码将是> 0,您可以在执行命令后运行检查状态代码:echo $?

要测试退出代码何时为零,请尝试:

ls -al > /dev/null 2>&1 && echo "success"

它将打印“成功”

如果(且仅当)&&返回退出状态为零,command2将执行command1