You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Bash Shell中设置命令退出码:寻求标准输出转退出码的简化方法

更简便的实现方式

简化子shell写法

你可以把原命令简化成:

bash -c 'exit "$(command)"'

用单引号替代$'...',写法更简洁,同时还能避免特殊字符被当前shell提前解析的问题。如果是在当前shell环境下执行(不介意当前shell退出),直接写:

exit "$(command)"

就能完成需求。

用xargs快速传递退出码

如果你的命令只会输出单个数字,还可以用xargs配合true命令实现:

command | xargs true

true命令在bash等主流shell中支持接收一个数字参数作为退出码,xargs会把前序命令的输出传递给它,最终就用这个数字作为退出码。不过这个方法的兼容性稍差,POSIX标准的true不一定支持参数。

定义快捷函数(适合频繁使用)

如果需要多次执行这类操作,可以定义一个简短的shell函数:

ret() { exit "$("$@")"; }

之后只需运行ret your-command,就能自动把目标命令的输出作为当前shell的退出码,用起来非常顺手。


内容的提问来源于stack exchange,提问作者Felipe Sierra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 15:59:53