linux服务器文件传输利器lrzsz

场景

  服务端开发人员经常会遇到的一个场景就是将本地的文件传到服务器上,或者把服务器上的文件下载到本地,那这个时候大家一般会用ftp服务,来完成这件事。但是如果服务器上并没有安装ftp服务的时候,这个操作就显的很繁琐。那有没有轻量的,方便又好用的工具呢?这就要说到我们今天要给诸位介绍的这个小工具了lrzsz

关于lrzsz

  lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议,可以用在windows与linux 系统之间的文件传输,体积小速度快。

安装lrzsz

  安装可以用源码安装也可以以所在平台的软件管理工具下载。

1.以centos为例:

1
yum -y install lrzsz

2.源码安装:

1
2
3
4
5
6
7
8
9
10
11
# 下载安装包
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
# 把命令加入$PATH
ln -s /usr/local/lrzsz/bin/lrz /usr/bin/rz
ln -s /usr/local/lrzsz/bin/lsz /usr/bin/sz

lrzsz使用

1.sz: 将选定的文件发送(send)到本地机器。
example:

1
sz /home/wwwlog/nginx.error.log

2.rz: 运行该命令会弹出 一个文件选择窗口, 从本地选择文件上传到服务器(receive)。

1
2
#rz命令不使用参数即可,会弹出系统自带文件选择框
rz

xshell or SecureCRT

  在xshell和SecureCRT中,执行sz命令的表现略有不同,xshell会弹出保存位置选项,而CRT采用的是默认位置,这是个配置项。可以依次打开菜单Options -> session options -> X/Y/Zmodem进行设置。

结语

  贼拉好用,隔壁后端大哥都感动哭了。

linux操作利器alias用法

写在前边

学习这件事,有时候并不一定很刻意,而是从生活,从经验中去积累,不知道什么时候就发生了。

type 命令

一般情况下,type命令被用于判断另外一个命令是否是内置命令,但是它实际上有更多的用法。

1.判断一个名字当前是否是alias、keyword、function、builtin、file或者什么都不是;

2.判断一个名字当前是否是alias、keyword、function、builtin、file或者什么都不是的另一种方法(适用于脚本编程);

3.显示一个名字的所有可能;

4.查看一个命令的执行路径(如果它是外部命令的话);

5.强制搜索外部命令。

详细参见这位老哥的博客 type命令使用

alias 命令

我们在服务器上查看日志的过程种,不可避免的要记住一大串的路径,比如说/export/www/logs_backend/Java_service_logs/,每次链接到服务器都要输一遍这个长长的路径才能进入日志目录,Linux就给我们提供了一个简单的方法来避免这种操作,就是alias,当然你也可以用软连接来简化这个过程,不过用alias会更为简单。

说这个之前我们要提一下type这个命令:

我们用到的是上边说的type命令的第一个功能,用来测试一下我们要自定义的别名有没有被占用

1
2
3
4
5
6
7
#如果没被占用
dell@DESKTOP-8U4HTOL MINGW64 /d/develop
$ type t
bash: type: t: not found
#如果被占用了
$ type ll
ll is aliased to `ls -l'

用法:alias [-p] [name[=value] … ] 注意=和字符串之间不能包含空格

1.命令alias

直接使用命令alias可以查看当前登录环境下的所有命令别名

1
2
3
4
$ alias
alias ll='ls -l'
alias log='cd /d/develop/backend/storge/logs'
alias ls='ls -F --color=auto --show-control-chars'

2.设置别名 alias 别名='完整命令'

1
$ alias log='cd /d/develop/backend/storge/logs'

3.命令alias + 命令

这将显示这个别名命令的具体含义

1
2
$ alias log
alias log='cd /d/develop/backend/storge/logs'

4.给一组命令设置别名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
dell@DESKTOP-8U4HTOL MINGW64 /d/develop
$ type t
bash: type: t: not found

dell@DESKTOP-8U4HTOL MINGW64 /d/develop
$ alias t='cd /d/study;mkdir test;touch 01.txt'

dell@DESKTOP-8U4HTOL MINGW64 /d/develop
$ t

dell@DESKTOP-8U4HTOL MINGW64 /d/study
$ ll
total 1
-rw-r--r-- 1 dell 197121 0 4月 4 16:03 01.txt

5.持久化别名

以上说的方法,都是临时性的,只在当前登录环境下有效,一旦退出登录就会失效,要想持久化,需要修改/etc/bash.bashrc

centos下是/etc/bashrc,ubuntu下为/etc/bash.bashrc

vi /etc/bashrc

在文件末尾添加alias log=’cd /d/develop/backend/storge/logs’并保存退出

执行source /etc/bashrc 使配置生效

以上。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×