在 bash shell 中设置提示符的退出代码

问题描述 投票:0回答:1

我有一个命令返回从 0 到 n 的数字,并且想捕获该数字并用作命令本身的退出代码。我通过这样做能够实现它:

sh -c $'exit $(command)'

但是对于像使用命令的 stdout 并将其设置为退出代码这样简单的事情来说,看起来有点麻烦。你知道是否有更简单的方法来做到这一点?

bash shell sh
1个回答
0
投票

如果您想捕获命令的输出,那么您需要命令替换,您的

$(command)
。如果您想提供特定的退出状态,那么可以使用
exit
,或者在函数中使用
return

如果您想在不终止 shell 的情况下进行输出到退出状态的转换,那么使用

()
在子 shell 中运行它比通过
sh -c
运行它更好。例子:

(exit "$(command)")

or

wrapper() {
  return "$(command)"
}
© www.soinside.com 2019 - 2024. All rights reserved.