【发布时间】:2017-05-19 03:28:25
【问题描述】:
当我使用 ssh 在 shell 脚本中执行远程文件,以便我可以在远程机器上执行结果时,我遇到了无法识别用户定义变量的问题。
-
我像这样创建了一个 shell 脚本 run.sh
#!/bin/bash ssh jenkins@10.122.214.55 << EOF ./test.sh && ret=1 || ret=0 echo "before" echo ${ret} echo "after" echo ${HOME} exit ${ret} EOF -
run.sh 调用的 test.sh 的内容:
#!/bin/bash echo "lala" exit 1 -
当我调用 ./run.sh 它像这样打印
lala before after /home/jenkins
为什么没有回显${ret}?调用 ./run.sh 后,回显 $?是 0,这是出乎意料的,我认为它应该在这里回显 1。
谢谢!
【问题讨论】: