N天学习一个linux命令之scp

Posted huan & ping

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了N天学习一个linux命令之scp相关的知识,希望对你有一定的参考价值。

用途

通过ssh通道,不同主机之间复制文件


用法

scp [options] [user@host:]file1 [user2@host2:]file2


常用参数

-1
使用 ssh 1协议

-2
使用ssh 2协议

-4
仅使用IPv4地址

-6
仅使用IPv6地址

-B
选择批处理模式,不询问输入密码或者其它授权信息

-C
启用压缩,传递给ssh

-c cipher
指定加密算法,会传递给ssh

-F ssh_config
指定ssh使用的配置文件,会直接传递给ssh

-i identity_file
指定用于授权的公钥文件,会直接传递给ssh

-l limit
限速,以Kbit/s为单位

-o ssh_options
使用ssh-config的形式,传递参数给ssh,相关详情查询ssh-config

-P prot
远程主机端口

-p
保留源文件的修改时间,访问时间,以及权限

-q
静默模式,不输出任何信息

-r
递归复制整个目录。如果是软链文件,会复制指向的真实的文件。

-S program
指定加密连接使用的程序,需要能够识别ssh配置

-v
详情模式,尽可能输出详细的信息


实践

1.上传目录到远程主机

[root@vm ~]# scp -r -p -P 32800 ./test wadeyu@192.168.2.8:~/
wadeyu@192.168.2.8\'s password: 
ntp.conf                                                                                                                                           100% 1830     1.8KB/s   00:00  

远程主机

[wadeyu@localhost ~]$ ll
total 8
-rw-r--r-- 1 root   root   302 Jan 23 17:01 changed.log
drwxr-xr-x 2 wadeyu nginx 4096 Feb 26 15:27 test

2.从远程主机下载文件到本地

[root@vm ~]# scp -p -P 32800 wadeyu@192.168.2.8:~/t.log ./
wadeyu@192.168.2.8\'s password: 
t.log                                                                                                                                              100%    4     0.0KB/s   00:00    
[root@vm ~]# ll
total 37348
-rw-r--r--. 1 root root 12352976 Jan  3 10:24 node-v8.9.4-linux-x64.tar.xz
-rw-r--r--. 1 root root  1197370 Nov  7  2016 pip-9.0.1.tar.gz
-rw-r--r--. 1 root root 22710891 Dec 19 13:36 Python-3.6.4.tgz
-rw-r--r--. 1 root root   737603 Jan  5 21:40 setuptools-38.4.0.zip
-rw-r--r--. 1 root root   418354 Jul 25  2017 supervisor-3.3.3.tar.gz
-rw-r--r--. 1 root root   802928 Jan 11 09:40 swoole-v2.0.10-stable.tar.gz
drwxr-xr-x. 2 root root     4096 Feb 26 15:27 test
-rw-r--r--. 1 root root        4 Feb 26 15:55 t.log

 

后记

1. 生成公钥证书指纹
ssh-keygen -lf ./ssh_host_rsa_key.pub


参考资料

【1】man scp
【2】每天一个linux命令(60):scp命令
https://www.cnblogs.com/peida/archive/2013/03/15/2960802.html
【3】How do I find my RSA key fingerprint?
https://stackoverflow.com/questions/9607295/how-do-i-find-my-rsa-key-fingerprint
【4】RSA 与 DSA
http://www.cnblogs.com/chromebook/p/4112329.html

以上是关于N天学习一个linux命令之scp的主要内容,如果未能解决你的问题,请参考以下文章

N天学习一个linux命令之ip

N天学习一个Linux命令之free

N天学习一个Linux命令之top

N天学习一个linux命令之ss

N天学习一个Linux命令之帮助命令:grep

N天学习一个Linux命令之帮助命令:grep