Linux上传下载神器之 lrzsz

Linux上传下载神器之 lrzsz
在开发的过程中,经常遇到 需要在 Linux 和 Windows 之间上传下载文件的情况

这时,一般都是使用 FTP 或者 WinSCP 工具进行上传下载, 虽然也能解决问题,但是这些工具需要在本地安装客户端并进行配置之后才能使用

这里介绍一款工具,它能秒级安装,安装即用,不需要任何的配置,就能方便快捷的在 Linux 和 Windows 之间传输文件

它就是Linux中上传下载的工具 lrzsz ,这个工具使用了 XMODEM、YMODEM 和 ZMODEM 文件传输协议来实现文件的上传和下载的,目前主流的SSH连接工具 ( SecureCRT、XShell 等 ) 都支持这些协议

安装

在使用 lrzsz 之前需要先在Linux下安装,它 大小只有几百KB, 安装是非常方便的, 基本秒级完成, 通过下面的命令就可以安装

yum install -y lrzsz

安装完成之后,输入 sz --v 或者 rz --v 命令,如果有如下输出,则表示安装成功

[root@ecs-centos-7 ~]# sz --v
sz (lrzsz) 0.12.20
[root@ecs-centos-7 ~]# rz --v
rz (lrzsz) 0.12.20

设置上传下载目录

在使用rz/sz 命令之前,需要先在 SSH工具的设置上传下载目录,下面以 SecureCRT 为例来说明下

在 SecureCRT 中打开一个SSH会话后, 打开会话选项窗口,选择 终端 -> 外观 -> X/Y/Zmodem , 然后就可以设置上传和下载目录了, 如下图所示

Linux上传下载神器之 lrzsz
  • 上传目录

当在 Linux 上执行 rz 命令之后,弹出选择发送文件窗口时,默认选择文件的目录就是上面设置的上传目录

  • 下载目录

在 Linux 上执行 sz a.txt 命令之后,Linux 上的文件 a.txt默认的本地下载目录就是上面设置的下载目录

关于X/Y/Zmodem

  • Xmodem

Xmodem 是一种古老的传输协议, 传输速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。

  • Ymodem

这是Xmodem的改良版,使用了1024位区段传送,速度比Xmodem要快

  • Zmodem

Zmodem采用了串流式(streaming)传输方式,传输速度较快,而且还具有自动改变区段大小和断点续传、快速错误侦测等功能。这是目前最流行的文件传输协议。

上面几种传输协议,目前Zmodem 是使用得最多的,下面介绍的 rz/sz 命令就是使用该传输协议的,命令中的 z 表示使用 Zmodem协议

将Win上文件上传到Linux

在Linux终端中输入 rz + 回车 ,在弹出的对话框中选择要上传的文件,点击添加,再确认,本地的文件就会上传到终端当前所在的目录中,上传的文件名默认和本地的文件名一致

rz 支持一次上传多个文件,只要选择需要上传文件的时候选择多个文件即可

另外,rz上传命令,如果Linux终端当前目录已经存在同名文件了,那么默认不会执行上传,要 -y 覆盖才可以

将Linux文件下载到Win上

把当前目录下的 a.txt 下载到本地

[root@ecs-centos-7 tmp]# ls
a.txt
[root@ecs-centos-7 tmp]# sz a.txt
 zmodem trl+C ȡ

  100%      28 bytes   28 bytes/s 00:00:01       0 Errors

[root@ecs-centos-7 tmp]#

执行 sz a.txt 命令默认把 a.txt 下载到本地,下载到本地哪个目录中,是在SSH连接工具中配置的,下载到本地的文件默认和命令中使用相同的文件名

下载进度、下载速度、用时、错误数会实时显示在 Linux的终端会话上

sz 也支持一次下载多个文件到本地

[root@ecs-centos-7 tmp]# ls
a.txt  b.txt
[root@ecs-centos-7 tmp]# sz a.txt b.txt
 zmodem trl+C ȡ

  100%      28 bytes   28 bytes/s 00:00:01       0 Errors
  100%      11 bytes   11 bytes/s 00:00:01       0 Errors

[root@ecs-centos-7 tmp]# sz *.txt
 zmodem trl+C ȡ

  100%      28 bytes   28 bytes/s 00:00:01       0 Errors
  100%      11 bytes   11 bytes/s 00:00:01       0 Errors

[root@ecs-centos-7 tmp]#

上面的例子中,Linux终端当前目录下有 a.txt 、b.txt 两个文件,执行 sz a.txt b.txt 或者 sz *.txt 命令都可以实现批量下载文件到本地

注意

使用 rz/sz 有几点需要注意的地方

  • Linux 上启动了 tmux 之后,无法使用 rz/sz 命令,这是由于 tmux 不支持Zmodem 协议,如果想要使用 rz/sz 的话只能先退出 tmux, 关于 tmux 可以参考 再也不用担心 SSH 断开了 – tmux 命令
  • rz/sz 不支持超过4G的文件,上传下载4G及以上大小的文件只能由 FTP 或者 WinScp 等工具来解决了

小结

本文介绍了文件上传下载的工具 lrzsz,它体积小,使用起来方便快捷,学会使用它,会显著的提高日常工作效率

Original: https://www.cnblogs.com/wanng/p/lrzsz-tools.html
Author: Linux开发那些事儿
Title: Linux上传下载神器之 lrzsz

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/606788/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 【原创】Linux虚拟化KVM-Qemu分析(五)之内存虚拟化

    背景 Read the fucking source code! –By 鲁迅 A picture is worth a thousand words. –…

    Linux 2023年6月8日
    070
  • 【转】认识长轮询:配置中心是如何实现推送的?

    一 前言 传统的静态配置方式想要修改某个配置时,必须重新启动一次应用,如果是数据库连接串的变更,那可能还容易接受一些,但如果变更的是一些运行时实时感知的配置,如某个功能项的开关,重…

    Linux 2023年6月16日
    0110
  • 剑指offer计划29(动态规划困难)—java

    1.1、题目1 剑指 Offer 19. 正则表达式匹配 1.2、解法 动态规划后面再研究 1.3、代码 class Solution { public boolean isMat…

    Linux 2023年6月11日
    099
  • 辗转相除法:(求最大公约数)

    辗转相除法:(最大公约数)又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法。它的具体做法是:用较大数除以较小数,再用出现的余数(第一余数)去除除…

    Linux 2023年6月7日
    0104
  • 018.CentOS升级内核

    作者:木二 出处:http://www.cnblogs.com/itzgr/ 关于作者:云计算、虚拟化,Linux,多多交流! 本文版权归作者所有,欢迎转载,但未经作者同意必须保留…

    Linux 2023年6月13日
    0102
  • python正则表达式

    1.定义 正则表达式使用某种预定义的模式去匹配一类具有共同特征的字符串,主要用于处理字符串,可以快速、准确地完成复杂的查找、替换等处理要求。 re模块提供了正则表达式操作所需要的的…

    Linux 2023年6月7日
    0111
  • Kubernetes 使用kubeadm创建集群

    实践环境 CentOS-7-x86_64-DVD-1810 Docker 19.03.9 Kubernetes version: v1.20.5 开始之前 1台Linux操作或更多…

    Linux 2023年5月27日
    0140
  • vue指令——day01

    v-cloak:能够解决插值表达式闪烁的问题 <p v-cloak>{{ msg }}</p> v-text:会覆盖元素中原本的内容,但是插值表达式 只会替…

    Linux 2023年6月7日
    0102
  • Android APP升级时解析程序包时出现问题

    一个新的测试机在自动下载升级安装更新版本APP时,报出”解析程序包时出现问题”错误。原因众说纷纭, 一番搜索,下面的回答比较全面: 简单总结: 安卓7以下一…

    Linux 2023年6月13日
    081
  • 分布式计算的本质、特点和未来

    在计算机早期,都是由一台主机承担全部存储和计算工作,这种方式被称为集中处理。后来随着处理器发展和网络出现,衍生出客户机/服务器架构,即由服务器完成主要的存储计算工作,客户机则负责较…

    Linux 2023年6月6日
    0107
  • Ubuntu Typora安装

    Ubuntn Typora安装 现在好像开始收费了,网上给的方法都是从官网下载的,感觉迟早不能用,因为要钱了 官网好像给的安装方法如下,可是好像不太好用 or run: sudo …

    Linux 2023年6月14日
    086
  • 部署tomcat

    tomcat tomcat 一、tomcat是什么 二、tomcat部署 1.实现访问java测试网页 2.能够成功登录到tomcat首页中的host manager、server…

    Linux 2023年6月6日
    0109
  • linux制作iso文件

    使用mkisofs工具 *基础用法 [root@localhost ~]# yum -y install mkisofs [root@localhost ~]# mkisofs -…

    Linux 2023年6月6日
    061
  • 【XML】学习笔记第四章-schema

    Schema 概述 作用 与DTD相比Schema的优势 基础命名空间: 模式 引用方法 通过xsi:noNamespaceSchemaLocation引入 通过xsi:shema…

    Linux 2023年6月14日
    079
  • Redis安装及HA(High Availability)配置

    Redis是一种内存数据库,以KEY-VALUE(即键值对)的形式存储数据。这篇文章主要介绍的是Redis安装及配置,所以不对Redis本身作详细介绍了。 下 载: 解 压: 以r…

    Linux 2023年5月28日
    070
  • uniapp php 微信app支付

    php;gutter:true;//微信支付wxPay(){ uni.getProvider({ service: ‘payment’, success: res=>{ if…

    Linux 2023年6月7日
    073
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球