scp命令

scp(Secure Copy Protocol)是一种用于在不同主机之间安全传输文件的命令。使用 scp 命令,你可以将文件从本地计算机复制到远程计算机,或者从远程计算机复制到本地计算机。

以下是 scp 命令的基本语法和一些示例:

基本语法

bash 复制代码
scp [选项] [本地文件路径] [远程用户]@[远程主机]:[远程路径]
scp [选项] [远程用户]@[远程主机]:[远程文件路径] [本地路径]

常用选项

-r:递归复制整个目录。

-P port:指定远程主机的 SSH 端口(默认是 22)。

-i identity_file:指定私钥文件用于身份验证。

-C:启用压缩。

示例

将本地文件复制到远程主机

bash 复制代码
scp /path/to/local/file.txt user@remote_host:/path/to/remote/directory/

例如,将本地的 example.txt 文件复制到远程主机 192.168.1.100 上的 /home/user/ 目录:

bash 复制代码
scp example.txt user@192.168.1.100:/home/user/

将远程文件复制到本地主机

bash 复制代码
scp user@remote_host:/path/to/remote/file.txt /path/to/local/directory/

例如,将远程主机 192.168.1.100 上的 example.txt 文件复制到本地的 /home/localuser/ 目录:

bash 复制代码
scp user@192.168.1.100:/home/user/example.txt /home/localuser/

递归复制整个目录

bash 复制代码
scp -r /path/to/local/directory user@remote_host:/path/to/remote/directory/

例如,将本地的 myfolder 目录及其内容复制到远程主机 192.168.1.100 上的 /home/user/ 目录:

bash 复制代码
scp -r myfolder user@192.168.1.100:/home/user/

指定非默认 SSH 端口

如果远程主机的 SSH 服务运行在非默认端口(例如 2222),可以使用 -P 选项:

bash 复制代码
scp -P 2222 /path/to/local/file.txt user@remote_host:/path/to/remote/directory/

注意事项

确保你有权访问远程主机,并且远程主机的 SSH 服务正在运行。

使用 scp 命令时,会提示你输入远程用户的密码(除非你已经配置了 SSH 密钥认证)。

scp 命令依赖于 SSH 协议,因此其安全性与 SSH 相同。

通过这些示例和说明,你应该能够使用 scp 命令在本地和远程主机之间安全地传输文件。

相关推荐
AlfredZhao1 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者5 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
Sokach10156 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao7 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3108 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql