$? 是 Shell 里最常用的“状态码寄存器”保存刚刚结束的那条命令的退出状态(exit status)

$? 是 Shell 里最常用的“状态码寄存器”——它永远保存刚刚结束的那条命令的退出状态(exit status)。

0 表示“成功”
1-255 表示各种失败,具体含义由命令自己定义

 

Bash 默认 $? 是管道最后一条命令的状态;如果想拿全部管道状态用数组:$PIPESTATUS[@]

生命周期
“下一条命令一跑,旧值就被覆盖” —— 因此想多次使用必须立刻保存。

posted @ 2026-01-14 10:09  山河水  阅读(1)  评论(0)    收藏  举报