scp
(secure copy)是一个用于在网络中通过 SSH 进行安全文件复制的命令行工具。它允许用户在本地计算机和远程计算机之间、或在两台远程计算机之间安全地传输文件或目录。
scp [选项] [源文件或目录] [目标位置]
[用户名@主机地址:路径]
。-r
:递归复制整个目录。-P port
:指定连接远程主机的端口(注意是大写 P
)。-i identity_file
:指定用于连接的私钥文件。-v
:详细模式,显示调试信息。-C
:启用压缩以提高传输效率。将本地文件 file.txt
复制到远程主机 example.com
上的用户 username
的home目录:
scp file.txt username@example.com:
将远程主机 example.com
上用户 username
的文件 file.txt
复制到本地当前目录:
scp username@example.com:file.txt .
将本地目录 dir
递归复制到远程主机 example.com
上用户 username
的目录 /path/to/remote/dir
:
scp -r dir username@example.com:/path/to/remote/dir
将远程主机 example.com
上用户 username
的目录 /path/to/remote/dir
递归复制到本地当前目录:
scp -r username@example.com:/path/to/remote/dir .
如果远程主机的 SSH 服务运行在非默认端口(例如 2222),可以使用 -P
选项指定端口:
scp -P 2222 file.txt username@example.com:/path/to/remote/dir
如果使用 SSH 密钥进行身份验证,可以使用 -i
选项指定密钥文件:
scp -i /path/to/private_key file.txt username@example.com:/path/to/remote/dir
通过 -C
选项启用压缩,以减少传输数据量:
scp -C file.txt username@example.com:/path/to/remote/dir