退出 | 含义 | 例子 | 注释 |
---|---|---|---|
0 | 正常退出 | echo “hello” | 正常 |
1 | 普通错误 | df -abcd | |
2 | shell内建的错误 | empty_function() {} | 缺少关键字或命令,或者权限问题 |
126 | 调用的命令不可执行 | /dev/null | 权限问题,或者是不可执行的命令 |
127 | 找不到命令 | not_command | 可能命令不存在,或者未加入环境变量$PATH 中 |
128 | 无效的退出码 | exit 6.18 | exit只接受整型退出码 |
128+n | 致命的信号n | kill -9 $PPID of script | 返回137(128+9) |
130 | 被Ctrl-C终止 | Ctrl-C | Ctrl-C是错误信号2,(130=2+128) |
255* | 退出状态超过范围 | exit -1 | exit只接受0 ~ 255范围的退出码 |
注:
- 退出码只会在 0 ~ 255 之间,如果你使用
<0
或者>255
的退出码,你猜会怎么样? - 因为 shell 可能会使用大于 125 的状态码,所以在编写程序时,退出码最好在 0~125 之间