timeout退出码的坑:为什么你的脚本判断失灵了
用timeout控制命令超时,最头疼的就是退出码问题。默认情况下,timeout不管命令本身返回什么,超时就给你返回124。这导致脚本里的错误判断逻辑全乱套了。
比如你写了个脚本:
timeout 10s your_script.sh
if [ $? -eq 0 ]; then
echo "成功"
elif [ $? -eq 124 ]; then
echo "超时"
else
echo "失败...
--preserve-status
-
2026.07.09 | youres | 36次围观

