shell脚本中的退出状态

时间:2011-03-27 17:53:07

标签: bash shell unix

我正在运行shell脚本的应用程序。现在我想知道应用程序的退出状态,以了解它是正常退出还是异常退出(崩溃等)。我怎么知道的? 例: ./mytestApp

4 个答案:

答案 0 :(得分:3)

Bash将最后一个进程的退出值存储在特殊变量$?中。

答案 1 :(得分:3)

您可以使用特殊变量$?,其中包含最后一个命令的退出状态。

答案 2 :(得分:2)

$?包含最后执行的命令的退出状态。因此,如果最后一个命令是./mytestapp$?将立即包含其退出状态(请注意,您只能检索此值一次,并且必须在您想要退出状态的命令之后立即检索它知道)。您可能希望在变量中捕获它,例如

#!/bin/bash
./mytestapp
APPSUCCESS=$?
# Continue doing whatever it is you're doing

这一切都假设您正在使用bash(sh和zsh也可以使用,IIRC)。

答案 3 :(得分:0)

特殊变量$?将包含bash中最后一个命令的退出状态。