echo $? 背后的原理

使用 echo $? 来进行测试执行的命令是否成功。

如果返回值是0,就是执行成功;如果是返回值是0以外的值,就是失败

echo $? 背后的原理

 背后的原理:当一个进程执行完毕时,该进程会调用一个名为 _exit 的例程来通知内核它已经做好“消亡”的准备了。该进程会提供一个退出码(一个整数)表明它准备退出的原因。按照惯例,0用来表示正常的或者说“成功”的终止。

执行 echo $? 时反回的值就是进程的退出码。而且,这个退出码是由刚刚执行完的进程提供给系统内核的。

echo$?命令的返回值,也就是前一个结束进程的返回值,在linux的bash中是按照unsigned char的数据类型来显示的,所以显示范围为0~255,这个值是根据程序返回值的最后一个字节来获取的,相当于截取最后一个字节。0表示成功,其他数值表示失败。

echo $? 背后的原理

上一篇:B站高可用架构总结


下一篇:IO流(二)