📜  scp 两个远程设备 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:05:05.847000             🧑  作者: Mango

使用 SCP 命令在两个远程设备之间传输文件

SCP 指 Secure Copy,可以在两个远程设备之间进行文件传输。SCP 命令与 SSH 命令一样,都是使用私钥进行加密。

1. SCP 命令语法
scp [选项] [源文件] [目标文件]
  • 选项:指定 SCP 命令选项。
  • 源文件:需要传输的文件路径,支持本地文件和远程文件。
  • 目标文件:传输到的目标路径,支持本地路径和远程路径。
2. SCP 命令选项

SCP 命令有一些选项可以控制传输行为,常用的选项有:

  • -r:递归复制整个目录。
  • -p:保留文件原来的修改时间和权限等属性。
  • -P:指定 SSH 的端口号。
  • -i:指定身份验证文件,即私钥文件。
3. 本地文件传输到远程设备

将本地文件 test.txt 传输到远程设备 192.168.0.100/home 目录下:

scp test.txt root@192.168.0.100:/home
  • test.txt:本地文件路径。
  • root:远程设备登录的用户名。
  • 192.168.0.100:远程设备的 IP 地址。
  • :/home:目标路径,冒号前表示远程设备,冒号后表示目标路径。
4. 远程设备之间的文件传输

远程设备(From)传输文件到另一个远程设备(To),可以使用以下命令:

scp username@from_host:/path/to/source_file username@to_host:/path/to/destination
  • from_host:源主机的 IP 地址或主机名。
  • /path/to/source_file:源文件路径。
  • to_host:目标主机的 IP 地址或主机名。
  • /path/to/destination:目标文件路径。
5. SCP 私钥身份验证

SCP 命令支持使用私钥文件进行身份验证,命令格式如下:

scp -i /path/to/private_key username@remote:/path/to/file /path/to/save/
  • -i:指定私钥文件路径。
  • username:远程设备登录的用户名。
  • remote:远程设备的 IP 地址或主机名。
  • /path/to/file:远程文件路径。
  • /path/to/save/:保存路径。
6. SCP 命令小结

SCP 命令可以在两个远程设备之间进行文件传输,具有以下特点:

  • 使用 SSH 进行加密传输,保证数据安全。
  • 支持本地文件和远程文件的传输。
  • 可以指定私钥文件进行身份验证。
  • 支持递归传输整个目录。
  • 可以保留文件的属性信息。