linux上很方便的上传下载文件工具rz和sz使用介绍,文件工具rz
linux上很方便的上传下载文件工具rz和sz使用介绍,文件工具rz
一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地;
与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服务了
PS:Linux上rz/sz这两个小工具安装lrzsz-x.x.xx.rpm即可。
当然,还可以设置一下目录了:
在SecureCRT设置一下上传和下载的默认目录
options–>session options–>file transfer 下可以设置上传和下载的目录
剩下的你只要在用SecureCRT登陆linux终端的时候:
发送文件到客户端:sz filename
zmodem接收可以自行启动.
从客户端上传文件到linux服务端:
只要服务端执行 : rz
然后在 SecureCRT 里选文件发送,协议 zmodem
Linux下和Windows之间的文件传输工具rz/sz(lrz/lsz) 介绍
【什么是rz/sz (lsz/lrz)】
简单说就是,可以很方便地用这两个sz/rz工具,实现Linux下和Windows之间的文件传输(发送和接收),速度大概为10KB/s,适合中小文件。rz/sz 通过Zmodem协议传输数据。
【为什么要用rz/sz】
普通Linux和Windows之间的文件共享方法,主要有建立nfs实现文件共享,和tftp之类的方法,但是都很麻烦,而如果只是小文件(几十 K,几百K),那么直接用rz/sz,就显得极其地方便了。大文件的话,还是要考虑上面说得,其他的共享方法了,毕竟,rz/sz速度只有10K左右,传大文件会累死人的。。。
【如何使用】
(1)在Windows下,用SecureCRT(或者Windows自带的超级终端)连接Com端口到开发板,或者ssh等协议连接到Linux服务器上。
(2)在Linux端,安装了rz/sz (lrz/lsz)工具后(嵌入式开发中,多数已经将编译好的rz/sz工具放到rootfs中了,普通的Linux系统,如果没有,可以下载源码,自己安装),就可以直接运行rz/sz,实现和Windows之间的文件传输了:
A、从windows中拷贝/下载文件到Linux(开发板):
运行rz后,会自动弹出WIndows下的文件选择对话框,选择对应文件后,添加,然后确定,就开始传输,将windows中的文件,拷贝到Linux中了。
B、将Linux中的文件拷贝到Windows中某个文件夹:
执行sz file_name 就可以将Linux当前文件夹下的文件file_name拷贝到Windows的对应目录中了,其中,Windows目录是由你当前运行的工具中设定的。
此处我用的是SecureCRT,具体的更改 rz上传/sz下载 的默认的路径的方法:
右键点击当前会话session -> Session Options -> Terminal -> Xmodem/Zmodem ->Directories :
Upload : 你要设置的路径
Download:你要设置的路径
以下是补充:
[一般用于SecureCRT ssh中使用]
yum install lrzsz -y
注意:rhel安装完系统后 直接可使用 rz sz
方法二:源文件编译方法
针对centos x.x 版 lrzsz安装配置
mkdir -p /usr/src/tools
cd /home/ryan/tools
wget http://down1.chinaunix.net/distfiles/lrzsz-0.12.20.tar.gz
tar zxvf lrzsz-0.12.20.tar.gz
cd lrzsz-0.12.20
./configure --prefix=/usr/local/lrzsz
make
make install
cd /usr/bin
ln -s /usr/local/lrzsz/bin/lrz rz
ln -s /usr/local/lrzsz/bin/lsz sz
rz
方法3:rpm安装:
rpm ivh lrzsz-x.rpm(去光盘里找)
此处略过。
方案例:某学生遇到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服务器窗口,选择sftp连接。用input就行。
最近在部署系统时接触了一些文件传输命令,分别做一下简单记录:1.sftpSecure Ftp 是一个基于SSH安全协议的文件传输管理工具。由于它是基于SSH的,会在传输过程中对用户的密码、数据等敏感信息进行加密,因此可以有效的防止用户信息在传输的过程中被窃取,比FTP有更高的安全性。在功能方面与FTP很类似,不仅可以传输文件数据,而且可以进行远程的文件管理(如建立,删除,查看文件列表等操作)。Sftp与ftp虽然只有一字之差,但基于的传输协议却是不同的。因此不能用sftp client去连接ftp server 也不能用 ftp client 去连接 sftp server。建立连接:sftp user@host从本地上传文件:put localpath下载文件:get remotepath与远程相对应的本地操作,只需要在命令前加上”l” 即可,方便好记。例如:lcd lpwd lmkdir2.scpSCP :secure copy (remote file copy program) 也是一个基于SSH安全协议的文件传输命令。与sftp不同的是,它只提供主机间的文件传输功能,没有文件管理的功能。复制local_file 到远程目录remote_folder下scp local_file remote_user@host:remote_folder复制local_folder 到远程remote_folder(需要加参数 -r 递归)scp –r local_folder remote_user@host:remote_folder以上命令反过来写就是远程复制到本地3.sz/rzsz/rz 是基于ZModem传输协议的命令。对传输的数据会进行核查,并且有很好的传输性能。使用起来更是非常方便,但前提是window端需要有能够支持ZModem的telnet或者SSH客户端,例如secureCRT。首先需要在secureCRT中可以配置相关的本地下载和上传目录,然后用rz、sz命令即可方便的传输文件数据。下载数据到本地下载目录:sz filename1 filename2 …上传数据到远程:执行rz –be 命令,客户端会弹出上传窗口,用户自行选择(可多选)要上传的文件即可。相关资料:
评论暂时关闭