码迷,mamicode.com
首页 > 系统相关 > 详细

shell的退出状态码

时间:2019-11-29 15:39:30      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:body   描述   ble   它的   用户   情况下   无效   返回   运行时   

shell中运行的每个命令都使用退出状态码(exit status)。退出状态码是一个0~255的整数,在命令结束运行时有命令传给shell。

查看退出状态码

Linux提供了一个专门的变量 $? 来保存上一个已执行命令的退出状态码。对于需要进行检查的命令,必须在其运行完毕后立刻查看或使用 $? 变量。它的值会变成有shell所执行的最后一条命令的退出状态码。

一个成功结束的命令的退出状态码是0。Linux错误退出状态码没有什么标准可循,但有一些可用的参考:

状态码 描述
0 命令成功结束
1 一般性未知错误
2 不适合的shell指令
126 命令不可执行
127 没找到命令
128 无效的退出参数
128+x 与Linux信号x相关的严重错误
130 通过 Ctrl+C 终止的命令
255 正常范围之外的退出状态码

举例说明:

  • 无效的命令会返回一个退出状态码127。
  • 退出状态码126,表明用户没有执行命令的正确权限。
  • 给命令提供了无效参数,会产生一般性的退出状态码1,表明在命令中发生了未知错误。

exit 命令

默认情况下,shell脚本会以脚本中的最后一个命令的退出状态码退出。
使用exit命令可以改变这种行为,允许你在脚本结束时指定一个退出状态码。

退出状态码是一个0~255的整数,参数太大,会被系统取模。

shell的退出状态码

标签:body   描述   ble   它的   用户   情况下   无效   返回   运行时   

原文地址:https://blog.51cto.com/steed/2454767

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!