如果我使用xterm调用命令(在我的情况下为另一个脚本),如下所示:
xterm -e sh second.sh
xterm返回后的
$?
中的值是xterm的退出状态代码(通常对我来说为0),而不是我的脚本。无论如何,有没有获取我脚本的退出状态代码?
最佳答案
您可以执行以下操作:
statusfile=$(mktemp)
xterm -e sh -c 'yourcommand; echo $? > '$statusfile
status=$(cat $statusfile)
rm $statusfile
yourcommand
的退出状态现在位于status
变量中。关于bash - 如何获得命令而不是xterm的退出代码?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8416596/