本文主要是介绍shell学习笔记(2)shell脚本 0 1 和真假,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Q:为什么shell脚本中,0表示真,1表示假?
shell语言有状态码的概念
假设错误0返回false,则返回的错误只有一种类型;如果返回非零数字,则有1-255,可以表示各种错误:1为普遍错误,127意为command not find等等。
状态码 | 描述 |
0 | 命令成功结束 |
1 | 通用未知错误 |
2 | 误用Shell命令 |
126 | 命令不可执行 |
127 | 没找到命令 |
128 | 无效退出参数 |
128+x | Linux信号x的严重错误 |
130 | 命令通过Ctrl+C控制码越界 |
255 | 退出码越界 |
参考http://tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF
Q:shell中可以将 0 1 作为条件写入判断语句中吗?
Bash是脚本语言,也就是一种弱编程语言。0 1 只表示返回状态码。
判断语句中不管写什么数字都返回真。因此shell中 while[ 1 ]与c语言while(1)循环的意思是不一样的,前者是因为判断语句中是数字,所以永真,后者是1代表true所以永真。
注:shell脚本中的[ ]条件语句两端必须有空格 即[空格conditon空格]
这篇关于shell学习笔记(2)shell脚本 0 1 和真假的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!