追光日记

站在巨人的肩上

其他

命令行工具

oh-my-zsh

提到命令行工具,首推的自然是这款大杀器,bash的替代工具。bash算得上一款中规中矩的shell工具,没有什么缺陷,但是也谈不上优秀,在很多方面考虑的还不够周到,例如,自动补全、语法、高亮显示、提示符等。

提到oh-my-zsh,那就厉害了,102kStar、250+插件、125+主题、1450+贡献者……从这一系列的数字中就可以体现出这款shell工具的生态有多么完善,也足以体现它有多么强大。

Tldr

用Linux的过程中难免会和各种参数打交道,距离比如ps -auxtar -jxvffind -name,每个”-“后面的就是各种命令参数,大家比较熟悉的查看命令解释的方法有”command ?” “man command”,就是命令后面加?或者man加命令。以man为例,解释很详细,但是带来的问题就是冗余,有很多信息是我们不想看到的,所以tldr就凸显出它的优点,简洁、实用。

Tig

Tig是一个基于ncurses的git文本模式接口。它的功能主要是作为一个Git存储库浏览器,但也可以帮助在块级别上分段提交更改,并充当各种Git命令输出的分页器。

Autojump

我们在Linux下开发时会频繁的切换工作目录,要一步一步的cd,pwd实在太麻烦了,autojump通过记录命令行中使用最多的目录并给定相应权重的数据块来进行工作,不需要完全输入目录名,甚至输错目录名都没问题。

使用方法:

跳转到包含foo的路径只需下面这个命令即可,autojump会通过维护的数据库进行跳转, j foo

Script

很多时候,为了安全,需要对工作内容进行备份和保存。而script就是一个隐藏的记录器,它可以记录终端会话的所有内容,形成文件,对总是忘记工作内容的同学真是福音。

使用方法:

在终端输入script,

1
> script

会显示:

1
Script started, file is typescript

接着可以开始自己的操作,想退出输入exit即可,当前目录下会生成一个名为trypescript的文件,里面记录了刚才的操作。

Tree

刚接触非桌面Linux的同学大多数会感觉Linux没有Windows或Mac那么直观,的确,我们面对的就是一行行命令,文件夹、应用图标什么的都没有,自然不直观。但是可以借助一些工具来增强目录的直观性,这里推荐的就是tree,可以以类似于图像的树状图排列目录和文件。

1
2
3
4
5
6
7
8
9
10
11
12
# tree                   #以树状图列出当前目录结构
. #当前目录结构
|-- README
|-- examples.desktop
|-- file
|-- file.new
|-- index.htm
|-- test
| |-- README
| |-- file
| |-- testfile
| |-- testfile1

Httpie

不同组件之间相互访问可以通过很多方式,其中restful是比较常用的一种。这里就涉及http请求,我们需要测试数据能够正确的上传和下载。在处理http请求过程中使用较多的工具就是curl。curl有很多明显的弊端:对用户不够友好,命令冗长;可视化效果差,没有高亮。httpie就是curl的一个非常好的替代者,它的使用更加简洁明了,而且能够高亮显示请求结果。

Glances

glances就如同它的汉语意思那样,“一眼”、“一瞥”,能够通过一个简单的命令对系统信息一目了然,了如指掌。glances利用Python编写的一个跨平台的监视工具,旨在通过curses或基于Web的界面提供大量监视信息。

你不仅可以通过终端命令行使用该工具,还可以web界面、API接口等对服务器进行远程监控,可以将统计信息导出到文件或数据库。