微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ssh – 本地机器的Shell脚本在远程机器上执行命令,然后在本地机器上继续

问题是:我想从远程计算机复制文件.

我正在寻找一种方法来编写一个连接到远程机器的shell脚本,获取存储文件的位置,一旦我从远程服务器断开位置并使用获取位置的本地机器中的scp复制文件.

具体来说,我想知道如何从脚本,我将连接到远程机器,在该机器上执行任务.断开连接,并在本地继续执行.

解决方案1:
remote_output="$(ssh user@host "remote command")"
scp "user@$host:$remote_output" /local/path

这可以通过连接到远程计算机,运行一些命令,以及将输出复制到本地计算机上的变量来实现.比如说,远程回显文件路径,在本地捕获它.

解决方案2:

ssh user@host "determine_path; cat filename" >local_filename

这可以通过直接从远程查找和输出文件,并在本地将其重定向文件来实现.这会跳过scp.这要求“cat”之前的步骤没有输出(您可以使用&> / dev / null来解决).

原文地址:https://www.jb51.cc/bash/386010.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐