SSH 通信 - 文件从一台设备发送到另一台设备,反之亦然

SSH communication - file sending from one device to another and vice versa

我希望能够通过 SSH 在使用设备 A 时从设备 A 向设备 B 发送文件,而且在使用设备时从 B 向 A 发送文件设备 B。是不是说A设备和B设备都必须安装SSH服务器和SSH客户端?有没有更简单的方法来实现简单的设备间文件发送?

最好的方法是通过 *nix "scp" 实用程序。它使用 SSH 传输文件。要将文件从主机 A 传输到客户端计算机 B,计算机 B 必须是 运行 SSH 服务器。我认为您不需要成为 运行 本地计算机上的 SSH 服务器。因此,假设您想从家庭计算机 (A) 上的远程笔记本电脑 (B) 传输文件 /home/bob/document.txt,而您的远程笔记本电脑是 运行 一台 SSH 服务器,侦听默认端口22. 假设远程笔记本电脑的 IP 地址为 188.188.188.188,远程笔记本电脑上的用户名是 bob。还假设您本地计算机的用户名是 bill。你会做

scp -P 22 bob@188.188.188.188:/home/bob/document.txt /home/bill/

或者,如果您想将文档从本地计算机复制到远程计算机,您可以这样做

scp -P 22 /home/bill/document.txt bob@188.188.188.188:/home/bob/

从技术上讲,如果 SSH 服务器在端口 22 上保留为默认值,则您不需要“-P 22”,但我包含了它,这样您就可以看到如果您监听它会做什么在不同的端口上。

有关详细信息,请参阅 this 超级有用的 scp 语法 link。

经过一些研究发现 do 两台设备一定都安装了 SSH 客户端和服务器。 SSH 本身不为此提供任何快捷方式,但是有各种语言的各种库可以同时使用客户端和服务器(Apache SSHD、libssh...)