shell:远程执行的方法的退出状态

时间:2018-06-18 06:11:18

标签: shell methods ssh exit sshpass

我有一个有两种方法的脚本。一种方法在远程机器上执行命令,第二种方法相应地起作用。

run_remote(){
sshpass -p $password ssh $user@$ipaddr /bin/bash << EOF
   if [ -e \$file ]; then
      echo "file exist"
      exit 1
   else
      echo "file doesnt exist"
   fi
EOF
   if [ check ]; then
      echo "failed"
      exit 1
   fi
}

run_local(){
   echo "run locally"
}

#main
run_remote
if [ $? == 0 ]; then
   run_local
fi

但即使文件存在与否,它总是执行run_local方法。 如果有人可以告诉我如何在远程计算机上执行方法时捕获方法的退出状态,那将会很有帮助。

1 个答案:

答案 0 :(得分:0)

尝试在行回显&#34;文件不存在后将退出0放入&#34;