Linux Shell学习笔记:exit退出状态代码
inux提供$?特殊变量来保存最后一条命令执行结束的退出状态。执行完一条命令后,立即执行echo$?,可以查看最后一条命令的退出状态值。
正常的情况下,命令成功执行完成的退出状态是0,如果非0,则命令执行有错。
该命令可以用于检查命令是否正确执行,比如在解压包的时候,检查解压包是否成功十分有效。
自定义退出状态码,可以在脚本中定义自己的退出状态代码,然后使用echo $?检查。
退出状态码最高是255,一般自定义的代码值为0~255,如果超出255,则返回该数值被256除了之后的余数。
退出状态代码:
0 命令成功完成
1通常的未知错误
2误用shell命令
126命令无法执行
127没有找到命令
128无效的退出参数
128+x使用Linux信号x的致命错误。
130使用Ctrl-C终止的命令
255规范外的退出状态
ubuntu下测试结果如下
wl@wl-MS-7673:/home/python$ date2013年 11月 14日 星期四 19:12:45 CSTwl@wl-MS-7673:/home/python$ echo $?0wl@wl-MS-7673:/home/python$ kkllkkkllk: command not foundwl@wl-MS-7673:/home/python$ echo $?127wl@wl-MS-7673:/home/python$ lshello.py hello.py~wl@wl-MS-7673:/home/python$ vim a.cwl@wl-MS-7673:/home/python$ lshello.py hello.py~wl@wl-MS-7673:/home/python$ gedit a.cwl@wl-MS-7673:/home/python$ ./hello.pybash: ./hello.py: 权限不够wl@wl-MS-7673:/home/python$ echo $?126wl@wl-MS-7673:/home/python$ date %tdate: 无效的日期"%t"wl@wl-MS-7673:/home/python$ echo $?1wl@wl-MS-7673:/home/python$
root@wl-MS-7673:~# ls -sail test790207 4 -rwxr--r-- 1 root root 30 11月 14 19:25 testroot@wl-MS-7673:~# ./testroot@wl-MS-7673:~# echo $?44root@wl-MS-7673:~# cat test#!/bin/bashvar=300exit $varroot@wl-MS-7673:~#
Linux Shell学习笔记:exit退出状态代码相关推荐
- linux系统学习笔记9——CANOpen状态转换
CANopen CANopen状态转换 CANopen状态转换 从节点上电和内部初始化之后自动进入预损作状太(Pre-operational State),在进入预操作之前,发送标准的启动对象(Boo ...
- Linux shell 学习笔记(7)— 构建基本脚本(变量、重定向、管道、状态码)
1. 使用多个命令 如果要两个命令一起运行,可以把它们放在同一行中,彼此间用分号隔开. $ date ; who Mon Feb 21 15:36:09 EST 2014 Christine tty2 ...
- Linux shell 学习笔记(10)— 处理用户输入(命令行读取参数、读取用户输入、超时处理)
1. 命令行参数 向 shell 脚本传递数据的最基本方法是使用命令行参数.命令行参数允许在运行脚本时向命令行添加数据. $ ./addem 10 30 本例向脚本 addem 传递了两个命令行参数( ...
- Linux shell 学习笔记(9)— 循环语句(for、while)以及更改字段分隔符
1. for 语句 bash shell 中 for 命令的基本格式如以下,$var 变量包含着这次迭代对应的当前列表项中的值. for var in list docommands done 也可以 ...
- Linux shell 学习笔记(3)— shell 父子关系及内建命令
1. shell 类型 只要用户登录到某个虚拟控制台终端或是在 GUI 中启动终端仿真器,默认的 shell 程序就会开始运行. 默认的交互 shell 会在用户登录某个虚拟控制台终端或在 GUI 中 ...
- linux shell学习笔记(二) 变量和运算符
1.什么是shell变量?本地变量.环境变量.变量替换(显示变量).位置变量.标准变量.特殊变量.影响变量的命令 2.本地变量:本地变量在用户现在的shell生命期的脚本中使用 variable-na ...
- linux shell 学习笔记
shell中定义变量形式: yourname='tengxi' 注意等号两边不能有空格,否则会报语法错误 使用变量 echo $yourname 或者 echo ${yourname}(推荐带花括号的 ...
- Linux shell 学习笔记(8)— 使用结构化命令(if-then 语句、数值比较、字符串比较、文件比较、case 语句)
1. 使用 if-then 语句 最基本的结构化命令就是if-then语句.if-then语句有如下格式. if command then commands fi 或者 if command; t ...
- Linux shell 学习笔记(12)— linux 信号、后台运行脚本、作业控制、定时运行任务
1. 处理信号 1.1 Linux 信号 常见的 Linux 信号如下表所示: 信号 值 描述 1 SIGHUP 挂起进程 2 SIGINT 终止进程 3 SIGQUIT 停止进程 9 SIGKILL ...
最新文章
- GitHub/GitLab/Gitee中项目互拷贝后仍保留历史提交记录的方法
- codeforces 922E
- java文件操作和_JAVA文件操作类和文件夹的操作
- android-x86 镜像iso下载_2019年微软MSDN原版镜像系统下载地址 Win10/7原版系统iso镜像文件...
- stm32-再谈GPIO
- Android MediaPlayer的生命周期
- java基础8 构造函数和构造代码块
- 浅谈Android垃圾回收机制
- 肯德尔系数怎么分析_2020LPL春季赛3月15日比赛数据的数据分析(Python)
- 数据结构与算法实验:实验二 链表实现一元多项式的加法/减法/乘法/求导
- oracle把修改成及联,oracle日常操作命令手册(用户管理)-从零到无
- 【PHP基础-3】PHP常用运算符
- C#调用dll报错:无法加载dll,找不到指定模块
- HR终极一问:为啥选择前端?答:混口饭吃。卒。(附网易面经)
- OpenGL学习之材质RGB值和光源RGB值关系
- Windows下搭建IOS开发环境
- 项目 - 基于Docker Swarm的高可用Web集群
- C语言大一课设:旭日苑菜品管理系统
- 关系数据库——数据库恢复
- Tio消息服务器,tio-websocket-spring-boot-starter 的简单使用 原 荐
热门文章
- QQ使用的一个小问题
- mouse without borders 两台主机共用一套鼠标键盘
- aes 和 rsa
- Android设置顶部状态栏颜色
- 5个人审查5开源视频聊天工具
- 西北工业大学 计算机学院 姜,姜学锋(计算机学院)老师 - 西北工业大学 - 院校大全...
- hanlp分词学习笔记
- 一次使用NodeJS实现网页爬虫记 - huanping - 博客园
- 计算机硬件之间是怎样联系的,计算机硬件系统和软件系统有没有联系
- 和Oracle差距越来越小,你该了解的MySQL 8.0 SQL优化新特性