ksh获取分配中的退出状态

Shu*_*rik 2 shell ksh

我需要知道执行分配的命令的退出状态。

export VALUE=`My_Get_Value 10`
Run Code Online (Sandbox Code Playgroud)

我需要知道My_Get_Value脚本的退出状态。

$?我的状态是作业本身。

我在KSH v93中需要它

che*_*ner 5

export VALUE=$(My_Get_Value 10)不是赋值语句;它是对export命令的调用,该命令采用的参数看起来像赋值语句。最简单的解决方法是将分配与调用分开export

VALUE=$(My_Get_Value 10)
mgv_exit=$?
export VALUE
Run Code Online (Sandbox Code Playgroud)

export只要在赋值之前或之后调用(只要您不在赋值和保存的值之间调用它)都没有关系$?,因为export它在name 上设置了一个属性VALUE,而不是named参数的值VALUE。以下是相同的:

export VALUE
VALUE=$(My_Get_Value 10)
mgv_exit=$?
Run Code Online (Sandbox Code Playgroud)