【发布时间】:2017-08-16 12:43:43
【问题描述】:
我有一个 bash 脚本,其中包含一些如下所示的函数:
my_functions.sh:
do_remote_command () {
ssh user@hostname "./runScript.sh $var1 $var2"
}
我通过另一个脚本调用此函数,该脚本正在获取上述函数,如下所示:
#!/bin/bash
source my_functions.sh
do_remote_command
我想从./runScript.sh 获取返回码。怎么说“给我底层命令的返回码”?
【问题讨论】:
-
在函数末尾添加
return $?。 -
do_remote_command的退出状态已经是最后执行的命令的退出状态,其退出状态是远程命令的退出状态。 -
@chepner 哦,你的意思是返回码一直向上传播?
-
不完全是。如果你的远程命令没有最后运行
runScript.sh,或者你的函数没有最后运行ssh,你就必须做一些更复杂的事情。 -
你刚才说的很有可能是这样。