我正在使用ssh从本地shell脚本运行远程shell脚本。 以下是我的本地shell脚本中的代码:
ssh userID@remote_server '/bin/bash' << EOF if remote_shell_script.sh ; then echo 'Script executed successfully' else echo 'Script Failed' fi EOF
上面的脚本工作正常。 但是我无法将状态码返回到本地可以使用的本地shell脚本。 我想在EOF..EOF里面返回一个状态码(0,1),这些语句可以在我的本地脚本中捕获,然后采取相应的措施。 我怎样才能做到这一点?
gprof命令不会创build正确的out.txt
保存命令输出保存换行符的stringvariables
重启服务crontab的问题
用于multithreading进程的Shell脚本
正则Expression式在if语句中用空格匹配一个string(用引号?)
EOF块的退出代码将被传回到外壳。 您可能遇到的问题是remote_shell_script.sh的退出代码正在被吞噬。 你可以解决这个问题。 一个是用适当的退出码退出。
ssh userID@remote_server '/bin/bash' << EOF if remote_shell_script.sh ; then echo 'Script executed successfully' exit 0 else echo 'Script Failed' exit 1 fi EOF echo "Exit code = $?"
更简单的方法是将检查逻辑移到本地服务器。 在这种情况下,你甚至不需要这里的EOF文件。
if ssh userID@remote_server remote_shell_script.sh; then echo 'Script executed successfully' else echo 'Script Failed' fi
总结以上是内存溢出为你收集整理的如何将状态码从远程运行的shell脚本返回到本地shell脚本全部内容,希望文章能够帮你解决如何将状态码从远程运行的shell脚本返回到本地shell脚本所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)