SCP 命令最常用的参数有:
- C:启用压缩。C 代表 压缩(Compression)。使用此参数时,数据传输速度会更快,因为数据是压缩的。SCP 将自动在源系统上压缩,并在目标系统上解压缩。
- c :c 代表 加密(Cipher)。默认情况下,SCP 使用 AES-128 加密方法对数据进行加密。你可以使用 -c 参数更改加密方法。
- i :i 代表 身份(Identity) 文件或私钥。如你所知,SSH 中使用基于密码或密钥的身份验证。如果希望在传输文件时使用基于密钥的身份验证,可以使用 -i 参数指定身份文件或私钥。
- l limit:l 代表 限制(Limit) 带宽。通过此参数,可以设置传输数据的最大带宽。它的单位是 Kbit/s。
- F :有时你可能需要使用不同的网络来连接到 Linux 系统,或你有一个代理服务器,这种情况下,你可以使用 -F 参数使用不同的 ssh_config文件(File)。
- P port:P 代表 端口(Port)。注意,这是大写的 P。默认情况下,SSH 使用端口 22。但出于安全原因,你可能已经更改了目标主机中的端口号。这种情况下,你应该使用 -P 参数显示指定新端口号。
- p:如果希望 保留(Preserve) 原始文件的修改时间、访问时间和模式,你需要使用 -p 参数。注意是小写 p。
- r:递归(Recursively) 复制整个目录。
- B:B 代表 批处理(Batch) 模式。它用于在传输文件时选择批处理模式。可以防止询问密码。
- S program:用于加密连接的 程序(Program) 名称。
- v:v 代表 详细(Verbose)。当使用 -v 参数时,命令将会在终端屏幕上打印进度。你会看到文件传输时到底发生了什么。它在调试连接、身份验证和配置问题时非常有用。
本地向远程机器传输
#传输文件夹
scp -r testdir root@100.0.12.12:/root/dir1
#传输文件
scp -p test.txt root@100.0.12.12:/root/dir1
远程机器向本地传输
scp -p root@100.0.12.12:/root/dir1/test.txt /root/dir
参考连接:
https://zhuanlan.zhihu.com/p/594045650