scp
(secure copy)是一个用于在本地和远程主机之间安全地复制文件和目录的命令行工具。它使用SSH协议来传输数据,提供与SSH相同的安全性。
使用scp
时,数据在传输过程中会被加密,这可以保护你的信息不被截听或篡改。scp
命令支持按文件或递归地按目录传输,并可用来传输文件、目录、以及创建远程文件的拷贝。
以下是scp
命令的基本语法:
scp [选项] [源文件或目录] [目的地文件或目录]
其中,源或目的地参数可以是本地的路径,或者远程主机上的路径,远程主机路径的格式如下:
用户名@主机地址:文件路径
以下是scp
一些常用的用法和选项:
- 复制本地文件到远程主机:
scp localfile.txt remote_username@remote_host:remote_path/
- 从远程主机复制文件到本地:
scp remote_username@remote_host:remote_path/remotefile.txt /local/path/
- 复制目录,需要递归复制(-r):
scp -r local_directory remote_username@remote_host:remote_path/
- 指定端口,如果SSH不是运行在标准端口(22)上:
scp -P port_number localfile.txt remote_username@remote_host:remote_path/
- 使用密钥文件进行认证:
scp -i /path/to/keyfile localfile.txt remote_username@remote_host:remote_path/
- 限制带宽,使用-B选项,可指定速率限制(以Kbit/s计):
scp -l bandwidth_limit localfile.txt remote_username@remote_host:remote_path/
- 显示进度条,使用
-v
参数可以显示详细的传输信息:
scp -v localfile.txt remote_username@remote_host:remote_path/
请留意,确保你拥有目标位置的写入权限,且远程主机上的sshd
服务已经启动。如果使用非默认SSH端口或需要提供证书文件等,要确保命令中包含了正确的选项和参数。在公开网络上传输敏感文件时,scp
是一种既安全又方便的选择。