Linux 状态码的意义
shell 中运行的每个命令都使用退出状态码(exit status)来告诉shell 它完成了处理。退出状态码是一个 0 ~ 255 之间的整数值,在命令结束运行时由命令传给shell。你可以捕捉这个值并在脚本中使用。
1.查看退出状态码
Linux 使用了
?
专
属
变
脸
来
保
存
上
个
执
行
的
命
令
的
退
出
状
态
码
。
你
必
须
在
要
查
看
的
命
令
之
后
马
上
查
看
或
使
用
? 专属变脸来保存上个执行的命令的退出状态码。你必须在要查看的命令之后马上查看或使用
?专属变脸来保存上个执行的命令的退出状态码。你必须在要查看的命令之后马上查看或使用?变量。它的值会变成shell中执行的最后一条命令的退出状态码,例如:
[root@ZX-DSI bin]# pwd
/usr/local/rss/bin
[root@ZX-DSI bin]# echo $?
0
2 Linux 状态码的意义
0 命令成功结束
1 通用未知错误
2 误用shell命令
126 命令不可执行
127 没找到命令
128 无效退出参数
128+x Linux 信号x的严重错误
130 Linux 信号2 的严重错误,即命令通过SIGINT(Ctrl+C)终止
255 退出状态码越界
默认状态下,shell脚本会以脚本中的最后一个命令作为退出状态码。所以一般情况下,在shell脚本中以 exit 命令的值来指定shell命令的退出状态码。但是退出状态码的范围是 0 ~ 255, 退出值超出这个范围将会执行取模运算。例如通过exit 命令指定返回值为300,经过取模运算,那么退出状态码就为44.
原文:https://blog.csdn.net/wlovh1989/article/details/51113488/