Linux编程Shell之入门——Shell $?:返回值或者上个命令退出状态
在 Shell 脚本中,$? 是一个特殊变量,表示上一个命令的退出状态。在 Shell 中,命令执行成功通常返回 0,错误和失败则返回非零值(通常是 1)。

在脚本中使用 $? 可以获取上一个命令的退出状态,并根据状态码判断命令的执行结果。具体来说,通常可以将 $? 与条件语句结合使用,来做出相应的判断。例如,可以使用下面的代码块来判断上一个命令是否执行成功:
command
if [ $? -eq 0 ]; then
echo "命令执行成功"
else
echo "命令执行失败"
fi
另外,$? 变量还可以与 Exit 命令结合使用,为脚本设置退出状态码。例如,可以使用下面的代码块来设置脚本的退出状态码:
command
if [ $? -ne 0 ]; then
echo "命令执行失败"
exit 1
fi
在上述代码块中,如果命令执行失败,就会输出 “命令执行失败” 并退出脚本(exit 1 会将脚本的退出状态码设置为 1)。
需要注意的是,?变量所保存的状态码只与前一个命令的执行结果有关,如果在两个命令之间执行了其他命令,?变量所保存的状态码只与前一个命令的执行结果有关,如果在两个命令之间执行了其他命令,? 变量的值将被覆盖,因此需要及时获取并使用上一个命令的退出状态码。
相关推荐
-
「nginx」十、nginx的location配置详解2026-07-04 00:51:45 -

最清晰的mysql体系架构图 ,助你深度掌握MySQL开发管理,赢在大数据时代
最清晰的mysql体系架构图 ,助你深度掌握MySQL开发管理,赢在大数据时代2026-07-04 00:21:47 -
PHP读取Excel内的图片2026-07-03 00:07:41 -
mysql:Otter跨机房数据同步(单向)2026-07-03 00:02:48 -

在windows10系统下搭建IIS+PHP+MYSQL+phpMyAdmin服务器运行环境
在windows10系统下搭建IIS+PHP+MYSQL+phpMyAdmin服务器运行环境2026-07-02 00:15:08