【什么是rz/sz (lsz/lrz)】 

简单说就是,可以很方便地用这两个sz/rz工具,实现Linux下和Windows之间的文件传输(发送和接收),速度大概为10KB/s,适合中小文件。rz/sz 通过Zmodem协议传输数据

【为什么要用rz/sz】

一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地;

普通Linux和Windows之间的文件共享方法,主要有建立nfs实现文件共享,和tftp之类的方法,但是都很麻烦,而如果只是小文件(几十 K,几百K),那么直接用rz/sz,就显得极其地方便了。大文件的话,还是要考虑上面说得,其他的共享方法了,毕竟,rz/sz速度只有10K左右,传大文件会累死人的。。。

【如何使用】
与ssh有关的两个命令可以提供很方便的操作: 
sz:将选定的文件发送(send)到本地机器 
rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive)

rz,sz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具

windows端需要支持ZModem的telnet/ssh客户端(比如SecureCRT)

运行命令rz,即是接收文件,SecureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录

注意:单独用rz会有两个问题:上传中断、上传乱码、上传文件变化(md5不同),解决办法是上传是用rz -be,并且去掉弹出的对话框中“Upload files as ASCII”前的勾选。 
-b binary 用binary的方式上传下载,不解释字符为ascii 
-e 强制escape 所有控制字符,比如Ctrl+x,DEL等

运行命令sz file1 file2就是发文件到windows上(保存的目录是可以配置)比ftp命令方便多了,而且服务器不用再开FTP服务了

当然,还可以设置一下目录了:

在SecureCRT设置一下上传和下载的默认目录 
options–>session options–>file transfer 下可以设置上传和下载的目录 
剩下的你只要在用SecureCRT登陆linux终端的时候: 
发送文件到客户端:sz filename 
zmodem接收可以自行启动. 
从客户端上传文件到linux服务端: 
只要服务端执行 : rz 
然后在 SecureCRT 里选文件发送,协议 zmodem

【安装】

rpm安装:

rpm ivh lrzsz-x.rpm(去光盘里找)

yum安装:

yum install lrzsz

【疑难解答】

某学生遇到rz,sz 上传下载的问题

rz正常,sz无法下载文件到本地。可学生还一头雾水,不知其所以然。
问题及解决过程:

[code]
[root@potatoes ~]# which sz
/usr/bin/sz
[root@potatoes ~]# ll /usr/bin/sz
lrwxrwxrwx 1 root root 24 Dec  6  2010 /usr/bin/sz -> /usr/local/lrzsz/bin/lrz
#===>这里明显看出,sz链接到sz -> /usr/local/lrzsz/bin/lrz 了。应该是 lsz
[root@potatoes ~]# rm -f /usr/bin/sz
[root@potatoes ~]# which sz
/usr/bin/which: no sz in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
[root@potatoes ~]# ll
total 52
-rw------- 1 root root   994 Dec  6  2010 anaconda-ks.cfg
-rw-r--r-- 1 root root 26403 Dec  6  2010 install.log
-rw-r--r-- 1 root root  4369 Dec  6  2010 install.log.syslog
[root@potatoes ~]# ln -s /usr/local/lrzsz/bin/lsz /usr/bin/sz
#===>修改链接sz -> /usr/local/lrzsz/bin/lsz 
[root@potatoes ~]# /usr/local/lrzsz/bin/lsz install.log
rz
正在开始 zmodem 传输。 按 Ctrl+C 取消。
正在传输 install.log...
  100%      25 KB   25 KB/s 00:00:01       0 错误
[root@potatoes ~]#ll /usr/bin/sz
lrwxrwxrwx 1 root root 24 Jun 11 08:00 /usr/bin/sz -> /usr/local/lrzsz/bin/lsz
[root@potatoes ~]# ll
total 52
-rw------- 1 root root   994 Dec  6  2010 anaconda-ks.cfg
-rw-r--r-- 1 root root 26403 Dec  6  2010 install.log
-rw-r--r-- 1 root root  4369 Dec  6  2010 install.log.syslog
[root@potatoes ~]# sz install.log
rz
正在开始 zmodem 传输。 按 Ctrl+C 取消。
正在传输 install.log...
  100%      25 KB   25 KB/s 00:00:01       0 错误
OK了。

Linux入门之常用命令(8)上传下载的更多相关文章

  1. 【Python】模块学习之使用paramiko连接Linux,远程执行命令,上传下载、文件

    本文主要介绍paramiko远程执行linux命令,及在服务器上进行文件的上传.下载 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. ...

  2. Linux 终端訪问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下訪问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上. google 一下. ...

  3. Linux系统简单易用的上传下载命令rz和sz

    一)安装方法汇总 1.安装方法(推荐) yum install lrzsz -y 2.在安装Linux系统时选中"DialupNetworking Support"组包 3.安装系 ...

  4. 【liunx命令】上传下载文件的方法

    scp   帮助命令: man scp   scp功能: 下载远程文件或者目录到本地, 如果想上传或者想下载目录,最好的办法是采用tar压缩一下,是最明智的选择.   从远程主机 下载东西到 本地电脑 ...

  5. 再见Xshell、Xftp!Python执行Linux命令、上传下载远程文件

    相信大家应该都接触过Linux操作系统(Ubuntu.Centos等),那么在使用的Linux操作系统需要使用一些远程ssh工具,尤其是公网服务器. 常用的ssh工具主要有:Xshell.MobaXt ...

  6. Linux入门学习 常用命令

    cd命令 功能是切换到指定的目录:命令格式:cd [目录名]有几个符号作为目录名有特殊的含义:"/"代表根目录.".."代表上一级目录."~" ...

  7. git 常用命令,上传,下载,更新线上代码

    git 常用命令以及推荐git新建上传个人博客 $ git clone  //本地如果无远程代码,先做这步,不然就忽略 $ git status //查看本地自己修改了多少文件 $ git add . ...

  8. 批量执行(Linux命令,上传/下载文件)

    前言: 每个公司的网络环境大都划分 办公网络.线上网络,之所以划分的主要原因是为了保证线上操作安全: 对于外部用户而言也只能访问线上网络的特定开放端口,那么是什么控制了用户访问线上网络的呢? 防火墙过 ...

  9. Java远程连接Linux服务器并执行命令及上传文件

    最近再开发中遇到需要将文件上传到Linux服务器上,至此整理代码笔记. 此种连接方法中有考虑到并发问题,在进行创建FTP连接的时候将每一个连接对象存放至 ThreadLocal<Ftp> ...

随机推荐

  1. [读书笔记] 四、SpringBoot中使用JPA 进行快速CRUD操作

    通过Spring提供的JPA Hibernate实现,进行快速CRUD操作的一个栗子~. 视图用到了SpringBoot推荐的thymeleaf来解析,数据库使用的Mysql,代码详细我会贴在下面文章 ...

  2. python3 安装及项目管理安装

    python3 一.下载安装 地址:https://www.python.org/downloads/ 安装:傻瓜式安装:我的目录如下 二.环境配置 [右键计算机]-->[属性]-->[高 ...

  3. linux中文件I/O操作(系统I/O)

    我们都知道linux下所有设备都是以文件存在的,所以当我们需要用到这些设备的时候,首先就需要打开它们,下面我们来详细了解一下文件I/O操作. 用到的文件I/O有以下几个操作:打开文件.读文件.写文件. ...

  4. Windows下配置Nginx

    一.今天是2017年1月18日.揣着一种也许叫做冲动的心情,决定以后每天都记录和回顾新涉及的技术,巩固已学到的知识,坚持. 二.回归到今天的技术主题,因为之前对于[反向代理]这种技术充满了好奇,借此机 ...

  5. Springmvc_validation 效验器

    springmvc-validation效验器的使用介绍 对于任何一个应用来说,都会做数据的有效性效验,但是只在前端做并不是很安全,考虑到安全性這个时候会要求我们在服务端也对数据进行有效验证,spri ...

  6. iOS block和代理的区别

      block和代理是iOS开发中实现回调的两种方式,大多数情况下是用哪个都可以,主要看个人喜好.本文主要是对两者做一下对比. 1.block简介   在 iOS中, block一共分三种.   (1 ...

  7. C# 获取exe、dll中的图标,支持获取256x256分辨率

    在网上找过许多文章,都没有成功获取过大图标,只能获取最大32x32.最后自己尝试了相关的windows api,终于找到一个可用的. 主要用到的C++的PrivateExtractIcons函数,具体 ...

  8. shell脚本编程基础

       最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础    shell脚本是利用shell的功能 ...

  9. 交换机的Ethernet Channel

    端口聚合也叫做以太通道(ethernet channel),主要用于交换机之间连接.由于两个交换机之间有多条冗余链路的时候,STP会将其中的几条链路关闭,只保留一条,这样可以避免二层的环 路产生.但是 ...

  10. 团队作业8——第二次项目冲刺(Beta阶段)5.25

    1.当天站立式会议照片 会议内容: 本次会议为第六次会议 本次会议在陆大楼3楼召开,本次会议内容: ①:检查总结上次任务完成情况 ②:安排今天的分工 ③:对昨天的问题进行讨论 ④:遇到困难,及时群里反 ...