使用ssh的工具scp传输文件
零、scp说明
SCP(Secure Copy)是一个在各个主机之间进行复制或者文件传输的一个命令行工具。
它使用一种同ssh一样的安全机制。事实上,它在后台使用ssh连接来进行文件的传输。
scp既指一种定义安全复制应该如何工作的协议,也指一种可以被安装的作为OpenSSH工具套的一部分的软件或是指令。
在这篇简单的教程中,我们可以看到一些scp指令的例子以及如何使用它进行安全的文件传输。
语法格式:
scp source_file_path destination_file_path
根据不同的主机,文件路径应该包扩:完整的主机地址,端口号,用户名,密码以及文件路径。
所以如果你正在从你的本地计算机“发送”文件到远程计算机(上传)的语法是这样的:
scp ~/my_local_file.txt user@remote_host.com:/some/remote/directory
当从远程主机复制文件到本地主机(下载),他看起来正好相反:
scp user@remote_host.com:/some/remote/directory ~/my_local_file.txtscp user@192.168.1.3:/some/path/file.txt .
这里很多是有关用scp来完成常规任务的。除了这些,scp也支持很多其他的选项和功能。让我们快速看一下他们的综述。
没错,默认情况下,scp总是覆盖目标地址的文件。如果你想避免它,那就使用功能更为强大的rsync工具吧。
一、详细输出
有了详细的输出,SCP的程序将输出大量关于它在后台做什么的信息。
当程序失败或无法完成请求时这是非常有用的。详细的输出将正确的指明该程序哪里出了问题。
输出的信息将会很多,而且包含有关连接如何建立,正在使用什么配置和认证文件等等的详细信息。
scp -v ~/test.txt root@192.168.1.3:/root/help2356.txt
二、多文件传输
多个文件可以像下面那样用空格分隔开
scp foo.txt bar.txt username@remotehost:/path/directory/
从远程主机复制多个文件到当前目录
scp username@remotehost:/path/directory/\{foo.txt,bar.txt\} ./scp root@192.168.1.3:~/\{abc.log,cde.txt\} ./
三、复制整个文件夹(递归)
为了从一个主机往另一个主机复制整个文件夹,需要使用r switch并且指定目录
scp -v -r ~/Downloads root@192.168.1.3:/root/Downloads
四、在两个远程主机之间复制文件
scp也可以把文件从一个远程主机复制到另一个远程主机。
scp user1@remotehost1:/some/remote/dir/foobar.txt user2@remotehost2:/some/remote/dir/
五、用压缩来加快传输
一个用于加快传输,节省时间和带宽的超酷的选项!你所需要做的就是用C选项来启用压缩功能。
该文件在传输过程中被压缩,在目的主机上被解压缩。
scp -vrC ~/Downloads root@192.168.1.3:/root/Downloads
在上面的例子中我们开启压缩选项移动了整个文件夹。速度的增长取决于多少文件能被压缩。
六、限制带宽的使用
如果你不想scp占用所有的带宽,那么用选项“l”来限制最大传输速度,Kbit/s
scp -vrC -l 400 ~/Downloads root@192.168.1.3:/root/Downloads
七、在远程主机上连接一个不同的端口
如果远程服务器有ssh守护进程运行在不同的端口上(默认是22),那么你需要告诉scp使用“-P”选项(大写)来使用指定的端口。
scp -vC -P 2200 ~/test.txt root@192.168.1.3:/some/path/test.txt
八、保存文件属性
“-p”选项(小写),将会保存源文件的修改时间,访问时间以及方式。
scp -C -p ~/test.txt root@192.168.1.3:/some/path/test.txt
九、安静模式
在安静模式(“-q”选项),scp输出将会减少,并且不再显示进度表以及警告和诊断信息。
scp -vCq ~/test.txt root@192.168.1.3:/some/path/test.txt
十、特殊标识文件
当使用基于秘钥认证(无密码)。你将使用特殊的包含私有秘钥的标识文件。
这个选项直接传递到ssh命令并且以同样的方式工作。
scp -vCq -i private_key.pem ~/test.txt root@192.168.1.3:/some/path/test.txt
十一、使用不同的ssh_config文件
用”F”选项指定不同的ssh_config文件
scp -vC -F /home/user/my_ssh_config ~/test.txt root@192.168.1.3:/some/path/test.txt
十二、使用不同的加密
scp默认使用AES加密,有时候你可能想使用不同的加密。
用不同的加密可能会加快转移过程,举例来说,blowfish和arcfour被认为比AES更快的存在(但是安全上不如AES)。
scp -c blowfish -C ~/local_file.txt username@remotehost:/remote/path/file.txt
在上面的例子中我们用blowfish加密并同时压缩,这可以得到显著的速度上的提升,当然也取决于可用的带宽。
十三、other
尽管SCP在安全地传输文件方面是非常有效的,它缺乏一个文件同步工具必要的功能。
它所能做的就是复制粘贴上述所有文件从一个位置到另一个位置。
一个更强大的工具的Rsync它不仅具有SCP的所有功能,而且增加了更多的功能用来在2个主机智能同步文件。
例如,它可以检查并上传只有修改过的文件,忽略现有的文件等等。
转载:转载地址
使用ssh的工具scp传输文件相关推荐
- Linux基础之-网络配置,主机名设置,ssh登陆,scp传输
一. 网络配置修改 1.临时修改(ip,dns,netmask,gateway) 临时修改网络配置,只要没有涉及到修改配置文件的,在network服务重启后,所有设置失效 2.永久修改(ip,dns, ...
- scp 传输文件到另一台服务器
文章目录 一.scp 命令简介 二.简单测试 scp 命令 1.启动 ssh 服务 3.scp 命令格式 2.运行 scp 命令 三.scp 免密码传输文件 四.docker 备份 MySQL 到另一 ...
- 使用scp传输文件 Host key verification failed.解决
在用scp传输文件时,看到如下报错信息: ysgz@ysgz:~/Desktop$ scp check.sh ysgz@192.168.3.6:/tools @@@@@@@@@@@@@@@@@@@@@ ...
- 使用scp传输文件给linux服务器,出现Permission denied(publickey) 的解决办法
原因:scp传输文件基于ssh拷贝服务,但是ssh在没有密钥登录的情况下,禁用了密码登录,所以需要我们修改ssh的配置文件 解决方法: 1.通过软件(putty.xshell等)或者浏览器控制台远程连 ...
- scp传输文件 Permission denied, please try again
[问题] scp传输文件时提示: 但是同样的密码又能连接服务器,网上的方法也都没有用. [原因] 传输格式存在问题: 即本人使用服务器时需要设置端口号,但网上提供的scp格式范例中没有设置端口参数-P ...
- Windows scp传输文件给Linux
Windows scp传输文件给Linux C:\Users\Administrator.DESKTOP-CGIO78B>scp C:\Users\Administrator.DESKTOP-C ...
- Java 文件传输小工具,网络传输文件,内网传输
文件传输小工具,网络传输文件,内网传输 换了一台电脑,想把一台电脑的资料放到另一太电脑上,由于没有太大的U盘就动手用Java写了个小工具.有需要的朋友下载使用! 运行环境 运行环境需要安装JDK,并配 ...
- linux使用scp传输文件出现Permission denied解决办法
linux使用scp传输文件出现Permission denied解决办法 前言 今天在两个linux服务器上用scp传输文件出现如下报错,经过查找资料决绝了该问题 解决 修改想要传输的文件夹的权限为 ...
- Linux 用ssh远程登录及scp传输文件
#ssh ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器. ####语法 ssh (选项) 远程主机 ####常用选项 -1:强制使用ssh协议版本1 ...
最新文章
- Sqlserver 2000 迷你、便携企业管理器(10M),支持Dts编辑
- DataRow复制一行到另一个DataTable
- go语言初体验(流程控制、range遍历、函数、结构体、面向对象)
- scrapy 分布式 mysql_Scrapy基于scrapy_redis实现分布式爬虫部署的示例
- mysql sqlserver分页_SqlServer、MySql万能分页代码
- 天气预报HTML代码
- 矩阵转置(信息学奥赛一本通-T1126)
- 【综合】JS跨域方案JSONP与CORS跨域
- Dapper Sqlpara where in
- JavaScript专题之跟着 underscore 学节流
- 电脑能登录微信,但网页打不开
- word插入脚注后最后一页多了一个分页符(下一页),导致最后多了一个空白页,删除不掉。
- CTF easycap Banmabanma
- 做成事情的3个要素:意愿、能力、资源
- php正则匹配中文和英文字母,PHP正则匹配中文字母数字正则的表达式
- 计算机一级c云大,云南大学网红C位易主!新晋流量霸主竟然是……
- 2014年IT互联网行业薪酬待遇
- python locust学习笔记
- 极客日报:恶意软件感染超1000万台安卓设备;淘宝App已支持“云闪付”付款;OpenSSH 8.8发布
- Python基础:第015课——弹跳的小球(优化版),条件语句和常量