如何在shell中输出返回码?

yeg*_*256 29 linux bash shell sh

我试图通过以下方式调用自定义shell脚本sh:

/bin/sh -c 'myscript.sh` >log.txt 2>&1 & echo $!
Run Code Online (Sandbox Code Playgroud)

此命令的输出是创建的后台进程的PID.我想指示/bin/sh保存myscript.sh某些文件的返回代码.可能吗?

jma*_*man 33

echo $? >> /path/to/return_code
Run Code Online (Sandbox Code Playgroud)

$?有bash中最后一个语句的返回码.

  • 但不是当它被放在后台.在原始问题中很容易错过`&`. (6认同)

Kar*_*ath 21

(/bin/sh -c "myscript.sh" >log.txt 2>&1 ; echo $? >somefile) & echo $!
Run Code Online (Sandbox Code Playgroud)