linux传输文件的几种方式(ftp、sftp、rz/sz、scp)

介绍

ftp(文件传输协议) : ftp是文件服务器,可实现文件的上传下载,存储等功能。
sftp(安全文件传输协议):作用同ftp,但突出一个安全。
scp(secure copy): scp能够将不同主机的文件进行相互传输,使用简单方便。此方法会加密传输文件,安全性提升,但是相对于的速度会慢些。
rz : 用于linux与windows之间的文件上传(需要在window安装xshell)
sz : 用于linux与windows之间的文件下载(需要在window安装xshell)

ftp和sftp

查看是否安装ftp:
redHat、centos、Fedora系统 rpm -qa|grep vsftpd
ubuntu系统 dpkg -l|grep vsftpd
在使用前需安装对应的服务,此处就不做介绍了。
由于ftp和sftp用法相似,在这里我着重写下sftp的用法。
命令格式:sftp (选项) (参数)
实例:sftp 172.24.5.12 或者 sftp wsupport@172.24.5.12,然后输入密码后进入,如下图:

在这里插入图片描述
当左边显示“SFTP”时表示连接成功。此时可对远程的机器进行操作。
上传文件到远程命令格式:put [本机要上传的目录或文件] [上传到目标机器地址]
下载文件到本地命令格式:get [目标文件或目录路径] [下载到目标机器地址路径]
实例:get -r test /home/wsupport/
在这里插入图片描述
小技巧:在sftp的环境下的操作就和一般ftp的操作类似,ls,rm,mkdir,dir,pwd,等指令都是对远端进行操作,如果要对本地操作,只需在上述的指令上加‘l’变为:lls,lcd, lpwd等。
在这里插入图片描述
注意:使用完后退出:“exit”或者“bye”命令

rz、sz

rz sz指令可以实现linux和windows之间的文件传输,但要求在windows客户端要安装Xshell或SecureCRT远程连接工具。rz指令和sz指令是一对上传与下载的指令。它们的软件包名为lrzsz。
linux安装命令如下
redHat、centos、Fedora系统 yum install lrzsz -y
ubuntu系统 dpkg -i lrzsz -y
上传命令格式:rz 回车后会弹出windows窗口,然后选择文件。默认下载到当前目录
在这里插入图片描述
下载命令格式:sz 文件名
在这里插入图片描述
注意:当遇到rz 、sz无法上传或者下载,已经存在的文件的时候,可以使用rz -y是覆盖上传sz -y则是覆盖下载

scp

scp的安装:文件传输的两端机器都需要安装
redHat、centos、Fedora系统 yum install openssh-clients -y
ubuntu系统 dpkg -i openssh-clients -y
命令格式:scp [参数]  [本地主机文件路径] [远程主机路径]
参数选项:
-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。 (建议使用,传输时保留属性时间信息,否则会导致时间发生改变无法进行增量传输)
-q 不显示传输进度条。 (很适合crontab任务计划中使用)
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
从目标主机copy到本地实例:scp -rp 172.24.5.12:/home/wsupport /home/wsupport/
在这里插入图片描述
从本地copy到目标实例:scp spm.war 172.24.5.12:/home/wsupport

在这里插入图片描述

  • 13
    点赞
  • 74
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux SFTP(SSH文件传输协议)是一种安全的文件传输协议,用于通过加密的SSH连接实现文件的上传和下载。通过SFTP,你可以使用put命令上传文件文件夹到远程服务器,也可以使用get命令从远程服务器下载文件文件夹到本地服务器。在上传文件时,你可以使用-r参数来上传文件夹。例如,你可以使用以下命令将本地服务器的/www/wwwroot目录下的study.log文件上传到远程服务器的/www/server目录下: sftp> lcd /www/wwwroot sftp> put study.log /www/server 如果要上传文件夹,可以使用以下命令将本地服务器的/www/wwwroot目录下的test文件夹上传到远程服务器的/www/server目录下: sftp> put -r test /www/server 在下载文件时,你可以使用以下命令将远程服务器的/www/server目录下的study.log文件下载到本地服务器的/www目录下: sftp> get /www/server/study.log /www 如果要下载文件夹,可以使用以下命令将远程服务器的/www/server目录下的test文件夹下载到本地服务器的/www目录下: sftp> get -r /www/server/test /www 要查看本地服务器的文件文件夹列表,可以使用lls命令: sftp> lls /www 请注意,以上命令只是示例,请根据实际情况进行相应的路径和文件名调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [[linux] SFTP文件传输基本命令](https://blog.csdn.net/Trance95/article/details/128735668)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [如何使用Linux SFTP命令传输文件](https://blog.csdn.net/weixin_36399948/article/details/116638055)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值