用途说明

exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行,返回值状态。

常用参数

格式:exit n

退出。设置退出码为n。(Cause the shell to exit with a status of n.)

格式:exit

退出。退出码不变,即为最后一个命令的退出码。(If n is omitted, the exit status is that of the  last  command executed. )

格式:$?

上一个命令的退出码。

格式:trap "commands" EXIT

退出时执行commands指定的命令。( A trap on EXIT is executed before the shell terminates.)

退出码(exit status,或exit code)的约定:

0表示成功(Zero - Success)

非0表示失败(Non-Zero  - Failure)

2表示用法不当(Incorrect Usage)

127表示命令没有找到(Command Not Found)

126表示不是可执行的(Not an executable)

>=128 信号产生

man 3 exit 写道

The C standard specifies two constants, EXIT_SUCCESS and EXIT_FAILURE, that may be passed to exit() to indicate        successful or unsuccessful termination, respectively.

以下摘自/usr/include/stdlib.h

#define EXIT_FAILURE    1       /* Failing exit status.  */
#define EXIT_SUCCESS    0       /* Successful exit status.  */

man 3 exit 写道BSD试图对退出码标准化。

BSD has attempted to standardize exit codes; see the file <sysexits.h>.

以下摘自/usr/include/sysexits.h

#define EX_OK           0       /* successful termination */
#define EX__BASE        64      /* base value for error messages */
#define EX_USAGE        64      /* command line usage error */
#define EX_DATAERR      65      /* data format error */
#define EX_NOINPUT      66      /* cannot open input */
#define EX_NOUSER       67      /* addressee unknown */
#define EX_NOHOST       68      /* host name unknown */
#define EX_UNAVAILABLE  69      /* service unavailable */
#define EX_SOFTWARE     70      /* internal software error */
#define EX_OSERR        71      /* system error (e.g., can't fork) */
#define EX_OSFILE       72      /* critical OS file missing */
#define EX_CANTCREAT    73      /* can't create (user) output file */
#define EX_IOERR        74      /* input/output error */
#define EX_TEMPFAIL     75      /* temp failure; user is invited to retry */
#define EX_PROTOCOL     76      /* remote error in protocol */
#define EX_NOPERM       77      /* permission denied */
#define EX_CONFIG       78      /* configuration error */
#define EX__MAX 78      /* maximum listed value */

使用示例

示例一 退出当前shell

$ exit logout

示例二 在脚本中,进入脚本所在目录,否则退出

Bash代码

#!/bin/bashcd $(dirname $0) || exit 1

示例三 在脚本中,判断参数数量,不匹配就打印使用方式,退出

if [ "$#" -ne "2" ]; thenecho "usage: $0 <area> <hours>"exit 2
fi

示例四 在脚本中,退出时删除临时文件

trap "rm -f tmpfile; echo Bye." EXIT

示例五 检查上一命令的退出码

./mycommand.shEXCODE=$?if [ "$EXCODE" == "0" ]; thenecho "O.K"
fi

Linux命令之exit相关推荐

  1. Linux命令之exit - 退出当前shell【返回值状态】

    用途说明 exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行. 常用参数 格式:exit n 退出.设置退出码为n.(Cause the shell to exit with ...

  2. linux退出当前目录命令,Linux命令之exit - 退出当前shell

    用途说明 exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行. 常用参数 格式:exit n 退出.设置退出码为n.(Cause the shell to exit with ...

  3. linux 运行c b停止,以下Linux命令中,用于终止某个进程的命令是()。A.deadB.killC.quitD.exit...

    以下Linux命令中,用于终止某个进程的命令是().A.deadB.killC.quitD.exit 更多相关问题 The substance does not dissolve in water _ ...

  4. linux:命令su、exit、sudo登入、退出用户、临时root权限详解。

    linux:命令su.exit.sudo登入.退出用户.临时root权限详解. 简单了解root用户:   su和exit:  sudo: sudo 使用时需要输入itheima的密码.输对了也不能使 ...

  5. Linux 命令(53)—— exit 命令(builtin)

    1.简介 exit 命令是 Shell 内建命令,用于退出当前 Shell 进程. 2.命令格式 exit N (1)状态码 N 的范围是 0-255,一般情况下,0 表示正常退出,非零表示异常退出. ...

  6. linux下free源码,linux命令free源码解读:Procps free.c

    linux命令free源码解读 linux命令free源码解读:Procps free.c 作者:isayme 发布时间:September 26, 2011 分类:Linux 我们讨论的是linux ...

  7. Linux命令行与shell脚本编程大全:第2版

    <Linux命令行与shell脚本编程大全:第2版> 基本信息 作者: (美)布卢姆(Blum,R.) 布雷斯纳汉(Bresnahan.C.) [作译者介绍] 译者: 武海峰 丛书名: 图 ...

  8. 执行远程linux命令,linux shell 远程执行命令

    经常要部署多台服务器上面的应用,如果一个个机器的登录太麻烦. 所有就想到编写一个脚本来部署不同的服务器 前提条件: 配置ssh免登陆 如果不会的请参加我的另外一篇文章 http://blog.csdn ...

  9. 最常用 150 个Linux命令汇总(建议收藏)

    点击上方[视学算法]→右上角[...]→[设为星标⭐] 来源:banana 童 www.cnblogs.com/bananaaa/p/7774467.html linux 命令是对 Linux 系统进 ...

最新文章

  1. python 没反应 生成exe_通过 pyinstaller 将 python 脚本打包成可执行程序!
  2. 如何设计一个牛逼的本地缓存
  3. 取名字_公司起名起名免费建筑公司取名字大全
  4. 用Python解决数据结构与算法问题
  5. VDI序曲十五 配置 RemoteFX 以获得最佳体验
  6. Linux-Android系统启动之INIT进程和system v init
  7. spi收发时的寄存器sr不变_「正点原子Linux连载」第二十七章SPI实验(二)
  8. java通过POI技术将HTML文件转成Word
  9. 弹性伸缩Auto Scaling产品全面升级,轻松应对业务负载变化,张弛有度,收放自如!...
  10. 围棋提子后的子放哪_围棋入门知识点:围棋规则 —— 禁入点
  11. 面向对象设计模式纵横谈:Prototype 原型模式(笔记记录)
  12. 二值图像中封闭孔洞的高效填充算法(附源码)。
  13. HYSBZ1061题解
  14. 02-创建hibernate工程
  15. 动态路由协议的基本配置---RIP
  16. SoundSource for Mac - 音频控制工具
  17. iOS开发之Undefined symbols for architecture x86_64报错
  18. jQuery.param() 函数详解
  19. rebase操作使用方法
  20. 小鸟云服务器FTP上传中断是什么原因?解决方法总结

热门文章

  1. CuteOne基于Python3的OneDrive多网盘挂载程序+带会员
  2. 电子元件-稳压器件(稳压管/TL431/LDO/DCDC)
  3. AAA云主机免费推荐码
  4. 【小知识】12个月份用英语表示
  5. Chrome浏览器设置header请求 响应头 使用 Chrome ModHeader插件,添加/修改/删除HTTP请求标头和响应标头
  6. python读取网络摄像头的帧_python实现从本地摄像头和网络摄像头截取图片功能
  7. 海飞丝头发的研究和实现
  8. 基于Simulink的QAM调制解调系统仿真
  9. win系统配置PHP环境
  10. 【论文翻译】Fast R-CNN