📜  scp 当前目录中的所有文件 (1)

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

使用SCP命令传输文件

SCP(Secure Copy)是一个基于 SSH(Secure Shell)协议,用于在远程计算机之间安全地传输文件的命令行工具。

命令格式
scp [来源地址] [目标地址]
从本地传输文件到远程服务器
传输单个文件
scp /本地/文件路径 用户名@远程服务器IP:/目标/文件路径
传输整个目录
scp -r /本地/目录路径 用户名@远程服务器IP:/目标/目录路径
从远程服务器传输文件到本地
传输单个文件
scp 用户名@远程服务器IP:/远程/文件路径 /本地/文件路径
传输整个目录
scp -r 用户名@远程服务器IP:/远程/目录路径 /本地/目录路径
使用不同端口号传输文件

有时候,远程服务器会使用不同的 SSH 端口进行连接,这时候需要使用 -P 参数来指定传输时使用的端口号。

传输单个文件
scp -P 端口号 /本地/文件路径 用户名@远程服务器IP:/目标/文件路径
传输整个目录
scp -P 端口号 -r /本地/目录路径 用户名@远程服务器IP:/目标/目录路径
使用 SSH 密钥传输文件

为了避免多次输入密码,通常会使用 SSH 密钥来进行文件传输。这需要先在本地生成 SSH 密钥,并将公钥放到远程服务器上。

生成 SSH 密钥
ssh-keygen -t rsa -b 4096 -C "youremail@example.com"
将公钥添加到远程服务器

将本地生成的公钥(~/.ssh/id_rsa.pub)添加到远程服务器的 ~/.ssh/authorized_keys 文件中。

传输文件
scp -i /本地/密钥路径 /本地/文件路径 用户名@远程服务器IP:/目标/文件路径
总结

SCP 命令简单易用,能够快速地在本地和远程服务器之间进行文件传输。在使用中注意文件路径和权限,以及能否访问远程服务器。