scp
基本语法:
scp [选项] [源文件] [目标地址]
以下是scp命令选项解释(常用的加粗):
- -1:使用ssh协议版本1;
- -2:使用ssh协议版本2;
- -4:使用ipv4;
- -6:使用ipv6;
- -B:以批处理模式运行;
- -C 开启压缩传输。(将-C标志传递给ssh,从而打开压缩功能)
- -F:指定ssh配置文件;
- -i:identity_file 从指定文件中读取传输时使用的密钥文件(例如亚马逊云pem),此参数直接传递给ssh;
- -l:指定宽带限制;
- -o:指定使用的ssh选项;
- -P:指定远程主机的端口号;
- -p:保留文件的最后修改时间,最后访问时间和权限模式;
- -q:不显示复制进度;
- -r:以递归方式复制。
- -r 递归整个文件夹,当复制文件夹时使用
- -v 显示进程详情,能够查看过程是否有异常
scp命令的基本使用
- 从本地上传文件到远程主机,使用以下命令
# 单个文件
scp [本机文件] 远程主机用户@远程主机ip:远程主机目录
# 多个文件
scp [本机文件] [本机文件1] 远程主机用户@远程主机ip:远程主机目录
- 示例:将本机root目录下的demo.sh传输到192.168.1.199的/path/目录下
[root@localhost /]# scp /root/demo.sh root@192.168.1.199:/path/
The authenticity of host '192.168.1.199 (192.168.1.199)' can't be established.
ECDSA key fingerprint is SHA256:H7pMzew2iEr/g8z6aF9OS/dsrzCrnJCqlf56RyJ/MWo.
ECDSA key fingerprint is MD5:f6:6e:c2:f9:25:6d:a7:82:95:23:5e:8f:14:0b:86:22.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.199' (ECDSA) to the list of known hosts.
Authorized users only. All activities may be monitored and reported.
root@192.168.1.199's password:
demo.sh 100% 85 46.7KB/s 00:00
[root@localhost /]#
- 从远程主机下载文件到本地
scp 远程主机用户@远程主机ip:远程主机目录 [本机文件]
- 示例:将192.168.1.199中/mnt/目录下的a.txt传输到本机根目录下
[root@localhost /]# scp root@192.168.1.199:/mnt/a.txt /
Authorized users only. All activities may be monitored and reported.
root@192.168.1.199's password:
a.txt 100% 0 0.0KB/s 00:00
- 拷贝整个目录到远程主机
scp -r [本机目录] 远程主机用户@远程主机ip:远程主机目录
- 示例:将本机bak目录及目录下的文件传输到192.168.1.199的/path/目录下
[root@localhost /]# scp -r /bak/ root@172.16.8.233:/mnt/
Authorized users only. All activities may be monitored and reported.
root@172.16.8.233's password:
smb.sh 100% 115 59.0KB/s 00:00
[root@localhost /]#
- 保留文件权限拷贝
scp -p [本机文件] 远程主机用户@远程主机ip:远程主机目录
- 开启压缩传输
# 拷贝本地文件到远程主机时,开启压缩传输
scp -C [本机文件] 远程主机用户@远程主机ip:远程主机目录