SCP命令概述
- 定义:SCP(Secure Copy Protocol)是一种基于SSH协议的文件传输命令,用于在本地计算机和远程服务器之间,或者两个远程服务器之间安全地复制文件和目录。
- 优势:它通过SSH协议进行数据传输,确保数据传输过程的安全性,同时支持文件和目录的复制操作。
常用命令格式
- 从本地上传文件/文件夹到远程Linux服务器
- 单个文件上传:
scp 本地文件路径+文件名 远程主机用户名@IP:需要上传到远程主机的路径
- 示例:
scp /Users/pc/Desktop/test.png root@192.168.1.1:/root
,将本地路径/Users/pc/Desktop/test.png
的文件上传到远程主机192.168.1.1
的/root
目录下。
- 文件夹上传:
scp -r 本地文件路径+文件夹名 远程主机用户名@IP:需要上传到远程主机的路径
- 示例:
scp -r /Users/pc/Desktop/test root@192.168.1.1:/root
,将本地路径/Users/pc/Desktop/test
文件夹及其内容上传到远程主机192.168.1.1
的/root
目录下。 - 说明:
-r
选项表示递归复制,用于文件夹的上传。
- 从远程服务器下载文件/文件夹到本地
- 单个文件下载:
scp 远程主机用户名@IP:服务器上存放文件的路径 下载到本地的文件路径
- 示例:
scp root@192.168.1.1:/root/test.png /Users/pc/Desktop
,将远程主机192.168.1.1
的/root/test.png
文件下载到本地路径/Users/pc/Desktop
。
- 文件夹下载:
scp -r 远程主机用户名@IP:服务器上存放文件的路径 下载到本地的文件路径
- 示例:
scp -r root@192.168.1.1:/root/test /Users/mac/Desktop
,将远程主机192.168.1.1
的/root/test
文件夹及其内容下载到本地路径/Users/mac/Desktop
。
实际操作示例
- 在Windows系统中,通过CMD命令行窗口使用SCP命令时,需要注意路径的写法。例如:
- 上传文件夹:
C:\Users\ASUS>scp -r E:\RNA转录组数据\D701\测序数据\Sample_SQ24084358-D701-MU3-D701-MU3 XXXX@XXXXXXXX:/public/home/2022099/yiyaoran/data/BSR/701
- 在执行此命令时,系统会提示输入远程主机的用户密码,输入正确的密码后,文件夹开始上传。
- 上传过程中会显示进度信息,如文件名、已传输的百分比、传输速度和预计剩余时间等。
注意事项
- 路径格式:在Windows系统中,路径可以使用正斜杠
/
或双反斜杠\\
来表示,避免路径格式错误导致命令无法执行。 - 权限问题:确保本地和远程主机的用户对相关文件和目录具有相应的读写权限,否则可能导致SCP命令执行失败。
- SSH服务:远程主机需要开启SSH服务,且本地计算机能够通过网络访问远程主机的IP地址,否则无法进行文件传输。
- 大文件传输:对于大文件或文件夹的传输,可能需要较长的时间,注意观察传输进度,避免中途断开连接导致传输失败。