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)

大家都在看

  • sed用法

    基础sed命令 sed OPTIONS… [SCRIPT] [INPUTFILE…] 常用的选项: -n,–quiet: 不输出模式空间中的内容 -i: 直…

    Linux 2023年6月6日
    0130
  • VR一体机如何退出FFBM

    Fast Factory Boot Mode(FFBM)是一种半开机的模式,它的主要目的是方便工厂测试,提高生产效率。正常情况下终端用户是不会碰到的。但售后的同学最近连续收到几台客…

    Linux 2023年6月7日
    0239
  • linux学习之对用户和组群进行管理

    本实验的主要任务是对用户和组群进行管理,使用 su 和 sudo 命令以及管理文件和目录的权限。结合文件权限与用户和组群的设置,理解文件的3 种用户身份及权限对于文件和目录的不同含…

    Linux 2023年6月13日
    086
  • 二进制安装docker

    下载二进制包 压到 /usr/local/bin ,我用的版本比较新 https://download.docker.com/linux/static/stable/x86_64/…

    Linux 2023年6月6日
    0101
  • 基于Docker的redis集群搭建

    Redis集群官方介绍:http://www.redis.cn/topics/cluster-tutorial.html 基于Docker搭建Redis集群 环境:6个节点,三主三…

    Linux 2023年5月28日
    083
  • aspx页面,后端通过Attributes.Add给textbox添加事件时,传参失效问题。

    测试一:————————————&#…

    Linux 2023年6月7日
    099
  • 004 Linux 揭开神器 vim 面纱

    01 开篇初识 vim vim 功能吊炸天,但我们掌握一些常用的命令即可应对日常的使用了,不记流水账! Linux 中最常用的编辑器是什么? vim ! vi 跟 vim 啥区别?…

    Linux 2023年5月27日
    0108
  • uWSGI服务实现优雅重启(graceful reload)的方式

    服务端当前使用方式 直接通过svc发送SIGINT/SIGKILL信号 直接触发real_run脚本中的相关信号通知 使用简单 每次重启所有进程(包括master),重启完成为全新…

    Linux 2023年6月6日
    0104
  • RHCSA阶段笔记

    命令终端字段含义介绍 [root@localhost ~]# 解释: root:当前登录系统用户名(root超级管理员) localhost :当前主机名 :当前用户所在目录( 为…

    Linux 2023年5月27日
    090
  • 安卓手机改造服务器——解决chroot下无法使用systemctl

    在Linux Deploy中安装的CentOS7无法使用 systemctl命令,没关系我们有其他办法 写在前面 对于这个问题,我也是第一次遇见。并没有深入研究,所有如果有哪些地方…

    Linux 2023年6月8日
    0137
  • zabbix用法

    zabbix用法 zabbix web管理界面功能介绍 默认页面是个仪表盘,右上角的编辑可以自定义布局 Monitoring(监控) Dashboard(仪表盘) 和主页面一样,可…

    Linux 2023年6月13日
    081
  • PYTORCH: 60分钟 | TENSORS

    Tensor是一种特殊的数据结构,非常类似于数组和矩阵。在PyTorch中,我们使用tensor编码模型的输入和输出,以及模型的参数。Tensor类似于Numpy的数组,除了ten…

    Linux 2023年6月16日
    0180
  • redis的另一个分支 keydb

    今天无意间发现了redis还有一个分支keydb 是多线程的,貌似在机器内核多的情况下效果比redis效果好 执行这些命令 在这之前先把redis关掉 sudo systemctl…

    Linux 2023年5月28日
    083
  • 【Javaweb】JSP标准标签库

    JSTL 1.什么是JSTL 2.版本 3.标签函数库 4.优点 JSTL基本概念 标签(Tag) 标签库(Tag library) 标签库描述文件(Tag Library Des…

    Linux 2023年6月14日
    0157
  • ASP.NET CORE在docker中的健康检查(healthcheck)

    在使用docker-compose的过程中,很多程序都提供了健康检查(healthcheck)的方法,通过健康检查,应用程序能够在确保其依赖的程序都已经启动的前提下启动,减少各种错…

    Linux 2023年6月6日
    0117
  • 为知笔记迁移到印象笔记-从入门到放弃

    最新进展 已经放弃了,目前正在逐步把笔记迁移到本地,用icloud来同步。 为什么放弃迁移? 没有找到好的迁移方案,迁移过去文档不方便查找和使用 为什么放弃印象笔记? 1.主要使用…

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