9 shell 退出状态】的更多相关文章

退出状态和逻辑运算符的组合 Shell 逻辑运算符 举栗 命令的退出状态(exit statu)是指执行完Linux命令或shell函数后,该命令或函数返回给调用它的程序的一个比较小的整数值.if 语句的判断条件,从本质上讲,判断的就是命令的退出状态. 按照惯例来说,退出状态为 0 表示"成功":也就是说,程序执行完成并且没有遇到任何问题.除 0 以外的其它任何退出状态都为"失败".但也会有例外,比如 diff 命令用来比较两个文件的不同,对于"没有差别&…
exit命令一般用于结束一个脚本,就像C语言的exit一样.它也能返回一个值给父进程.每一个命令都能返回一个退出状态(有时也看做返回状态).一个命令执行成功返回0,一个执行不成功的命令则返回一个非零值,此值通常可以被解释成一个对应的错误值.除了一些例外的情况,一个行为端庄的UNIX命令,程序或是软件包执行成功能返回0的作为退出码.同样的,在脚本里的函数和脚本自身都会返回一个退出状态码.在脚本或函数里被执行的最后一个命令将决定退出状态码.在一个脚本里,exit nnn 命令将会返回shell一个n…
shell中的退出状态码最大只有255,如果超过这个值,就会进行取余运算,即如果执行如下命令: exit exitCode 如果exitCode大于255,那么实际的状态码为exitCode % 256.举个例子,如果exitCode = 300,那么实际的状态码就是44…
inux提供$?特殊变量来保存最后一条命令执行结束的退出状态.执行完一条命令后,立即执行echo$?,可以查看最后一条命令的退出状态值. 正常的情况下,命令成功执行完成的退出状态是0,如果非0,则命令执行有错. 该命令可以用于检查命令是否正确执行,比如在解压包的时候,检查解压包是否成功十分有效. 自定义退出状态码,可以在脚本中定义自己的退出状态代码,然后使用echo $?检查. 退出状态码最高是255,一般自定义的代码值为0~255,如果超出255,则返回该数值被256除了之后的余数. 退出状态…
Shell $?获取函数返回值或者上一个命令的退出状态 来自:互联网 时间:2021-01-12 阅读:2 $? 是一个特殊变量,用来获取上一个命令的退出状态,或者上一个函数的返回值. 所谓退出状态,就是上一个命令执行后的返回结果.退出状态是一个数字,一般情况下,大部分命令执行成功会返回 0,失败返回 1,这和C语言的 main() 函数是类似的. 不过,也有一些命令返回其他值,表示不同类型的错误. 1) $? 获取上一个命令的退出状态 编写下面的代码,并保存为 test.sh: #!/bin/…
shell中运行的每个命令都使用退出状态码(exit status)来告诉shell它完成了处理.退出状态码是一个0~255之间的整数值,在命令结束时由命令传回shell. 1 .查看退出状态码 Linux提供了$?专属变量保存上一个执行的命令的退出状态码.你可以在你运行一个命令之后查看(echo $?). 几个典型的退出状态码及其意义: 0----------------命令运行成功 1----------------通知未知错误 2----------------误用shell命令 126-…
程序退出状态码 前言 在本篇文章当中主要给大家介绍一个shell的小知识--状态码.这是当我们的程序退出的时候,子进程会将自己程序的退出码传递给父进程,有时候我们可以利用这一操作做一些进程退出之后的事情,比如当程序执行失败或者被某个信号杀死我们就可以了解到,然后做出对应的措施. 状态码简介 上图是一个zsh的截图,当我们执行命令asdsad之后,因为没有这个命令,所以zsh(类似于bash的一种shell),输出没有找到这个命令,但是我们发现图中箭头️由绿色变成红色,表示程序不是正常退出.现在有…
Linux提供了一个专门的变量$?来保存上个已执行命令的退出状态码.对于需要进行检查的命令,必须在其运行完毕后立刻查看或使用$?变量.它的值会变成由shell所执行的最后一条命令的退出状态码: [root@host1 test]# date 2017年 07月 19日 星期三 :: CST [root@host1 test]# echo $? 按照惯例,一个成功结束的命令的退出状态码是0.如果一个命令结束时有错误,退出状态码就是一个正数值(1-255): [root@host1 test]# q…
命令成功结束 一般性未知错误 不适合的shell命令 命令不可执行 没找到命令 无效的退出参数 +x 与Linux信号x相关的严重错误 通过Ctrl+C终止的命令 正常范围之外的退出状态码…
一.退出状态 系统每执行一个命令,都会返回一个退出状态,若返回退出状态为0,表示命令执行成功, 若返回退出状态不为0,表示命令执行有错误. echo  $? 可以打印出退出状态. 例如:ls echo $? 状态值 含义 0 命令执行成功,没有错误 1-125 运行失败,脚本命令.系统命令错误或参数传递错误 126 有该命令,但无法执行 127 没有该命令 >128 命令被系统强制结束 二.测试test或[] 测试命令用于判断表达式的真假.测试条件为真,返回值0:测试条件为假,返回值不为0. 这…