25 个 Linux 下最炫酷又强大的命令行神器,你用过其中哪几个呢?
本文首发于:微信公众号「运维之美」,公众号 ID:Hi-Linux。
「运维之美」是一个有情怀、有态度,专注于 Linux 运维相关技术文章分享的公众号。公众号致力于为广大运维工作者分享各类技术文章和发布最前沿的科技信息。公众号的核心理念是:分享,我们认为只有分享才能使我们的团体更强大。如果你想第一时间获取最新技术文章,欢迎关注我们!
公众号作者 Mike,一个月薪 3000 的杂工。从事 IT 相关工作 15+ 年,热衷于互联网技术领域,认同开源文化,对运维相关技术有自己独特的见解。很愿意将自己积累的经验、心得、技能与大家分享交流,篇篇干货不要错过哟。如果你想联系到我,可关注公众号获取相关信息。
众所周知,我们在 Linux 下大多数时候是使用命令行来处理任务的。这样不但操作起来效率比较高,而且界面也比较炫酷。下面,我们就给大家推荐一些不但炫酷又好用的 Linux 命令行神器。
1. exa
exa 是一个用来替代 ls 的工具, exa 相比于 ls 增加了很多新的特性,比如:支持不同文件类型可以用不同颜色来展示、exa 比 ls 速度更快一些等。
更多详细介绍可参考:「推荐一个比 ls 命令速度快 100 倍的文件目录浏览神器」 一文。
2. FD
fd 是基于 Rust 开发的一个速度超快的命令行搜索工具,fd 旨在成为 Linux / Unix 下 find 命令的替代品。
fd 虽然不能提供现在 find 命令所有的强大功能,但它也提供了足够强大的功能来满足你日常需要。比如:简洁的语法、彩色的终端输出、超快的查询速度、智能大小写、支持正则表达式以及可并行执行命令等特性。
更多详细介绍可参考:「推荐一款比 Find 快 10 倍的搜索工具 FD」 一文。
3. RipGrep
Ripgrep 是命令行下一个基于行的命令行搜索工具,比 ag、grep、ack 速度更快。RipGrep 使用 Rust 开发,可以在多平台下运行,支持 Mac、Linux 和 Windows 等平台。
更多详细介绍可参考:「推荐一款命令行下最快的文本搜索神器 RipGrep」 一文。
4. Tig
Tig 是一款命令行下 Git 的可视化工具,可以很方便地在命令行下以交互的方式完成 Git 的各种操作。
5. FZF
FZF 是使用 GO 语言开发的一款命令行下支持模糊搜索的交互式工具。FZF 可以用来查找任何列表内容,包括文件、Git 分支、进程等。所有的命令行工具都可以生成列表后再通过管道将结果输入到 FZF 上进行模糊搜索。FZF 还可以结合其它工具(比如:rg、bat 和 Fasd )来完成更多的工作。
6. FPP
FPP (Facebook Path Picker ) 是由 Fackbook 开源一款终端多文件路径选择工具,它可以用于完善优化终端中的操作, 比如:Git、Grep 等的输出结果。
7. BAT
BAT 是命令行下一款用来显示文件内容的工具,bat 命令功能跟常用命令 cat 类似。只是 bat 功能上更加强大一些,bat 在 cat 命令的基础上加入了行号显示、代码高亮和 Git 集成。
更多详细介绍可参考:「推荐一款命令行下支持语法高亮和Git集成的文件查看工具 bat」 一文。
8. MyCli
MyCli 是一个 MySQL 的命令行客户端,可以实现自动补全和语法高亮。MyCli 也可用于 MariaDB 和Percona。
项目地址:http://mycli.net/
更多详细介绍可参考:「MySQL的增强型语法高亮终端-MyCli」 一文。
9. HTop
HTop 称之为 Top 的增强版,是一个相对于 Top 命令提供更美观、更方便的进程监控工具。
项目地址: https://hisham.hm/htop/
更多详细介绍可参考:「一款比 top 强悍好用的进程管理监控工具」 一文。
10. Glances
Glances 是一个用于监控系统的跨平台、基于文本模式的命令行工具。它是用 Python 编写的,使用 psutil 库从系统获取信息。你可以用它来监控 CPU、平均负载、内存、网络接口、磁盘 I/O,文件系统空间利用率、挂载的设备、所有活动进程以及消耗资源最多的进程。信息比 htop 更加丰富,除了命令行,Glances 还提供页面服务,可以让你从页面上随时查看某服务器的状态。
11. lrzsz
lrzsz 软件包是一个支持 Zmodem 协议的工具包。 其中包含的 rz、sz 命令是通过 ZModem 协议在远程服务器和终端机器间上传下载文件的利器。
lrzsz 支持交互式文件传输,在多重跳板机下传输文件非常好用,不用一级一级传输。
更多详细介绍可参考:「在 iTerm2 中使用 Zmodem 实现快速传输文件」 一文。
12. Ncdu
Ncdu (NCurses Disk Usage) 是一个基于 Ncurses 库的 du 命令的界面。它通过大家熟知的 du 命令,为用户提供一个快速且容易被使用的界面。它可以显示磁盘使用的百分比,且允许你使用 ncurses 库的方式在目录之间导航。
13. Tmux
Tmux 是一个优秀的终端复用工具,功能类似 GNU Screen,但使用 BSD 许可发布。用户可以通过 Tmux 在一个终端内管理多个分离的会话、窗口及面板,对于同时使用多个命令行,或多个任务时非常方便。
14. MultiTail
MultiTail 是一个开源的 Ncurses 实用程序,可用于在单个窗口或单个 Shell 中将多个日志文件同时显示到标准输出。
15. ShellCheck
ShellCheck 是一款实用的 Shell 脚本静态检查工具,可以帮助你提前发现并修复语法错误以及不规范的写法。
16. Explainshell
Explainshell 是一个帮助你解释命令行的网站,它会分析命令的帮助文档,然后根据你想查询的命令参数来抽取对应的解释,然后简洁易懂地显示出来。
17. Asciinema
Asciinema 是一个终端下非常棒的录屏和回放软件。Asciinema 对终端输入输出进行捕捉,然后以文本的形式来记录和回放。
基于 Asciinema 用文本来记录的特性,使其拥有了非常炫酷的特性。你可以在播放过程中随时暂停,然后对播放器中的文本进行复制或者其它操作。
更多详细介绍可参考:「手把手教你使用终端录屏神器 Asciinema」 一文。
18. Svg-term
一个可以根据 Asciinema 录制文件生成 SVG 动画的小工具。
来看一个实例:将通过 Asciinema 在终端录制的视频转换为 SVG 文件。
# 安装 svg-term
$ npm install -g svg-term-cli
# 直接转换发布在 Asciinema 网站上的视频,需要先确认视频所在链接中的录制 ID,例如: https://asciinema.org/a/219486 的 ID 就是 219486
$ svg-term --cast=219486 --out ~/home/mike/out.svg --padding 18 --height 8 --width 80
# 如果你不想把录制文件上传到 Asciinema 网站上,你也可以直接使用 svg-term 转换本地录制文件
$ asciinema rec cast.json
$ cat cast.json | svg-term-cli
19. Wrk
Wrk 是轻量级的 HTTP 性能测试工具。相比于 Apache ab 功能更强大,支持 HTTP 1.1,而且可以用 Lua 写脚本支持更复杂的测试场景。
20. HTTPie
HTTPie (读aych-tee-tee-pie) 是一款开源的命令行 HTTP 工具。HTTPie 采用 Python 开发,底层用到了 Requests 和 Pygments 库。
HTTPie 设计用来增强 wget 和 curl 的可用性。它的主要目标是使通过命令行与网络服务器进行交互的过程变得尽可能的人性化。其提供了一个简单的 HTTP 环境来让我们通过简单而自然的语法发送任意 HTTP 请求,并显示彩色输出。HTTPie 可用于测试,调试和与 HTTP 服务器进行普通的交互。
项目地址: http://httpie.org/
更多详细介绍可参考:「如何用 HTTPie 更高效的调试接口」 一文。
21. HTTP Prompt
HTTP Prompt 是一个交互式的命令行 HTTP 客户端,支持自动完成、语法高亮,基于 HTTPie 和 prompt_toolkit 构建。HTTP Prompt 相对于其它命令行的 HTTP 客户端 (如:HTTPie、Curl 等)使用上更加直观方便。
更多详细介绍可参考:「Linux 命令行下交互式 HTTP 客户端--HTTP Prompt」 一文。
22. TLDR
TLDR 全称Too long, Don’t read,翻译成中文就是太长不读。它可以帮助你快速查看命令行工具的使用实例。简而言之,就是 Man 页面的精简版本。
更多详细介绍可参考:「Linux命令行学习神器tldr」 一文。
23. Ranger
Ranger 是一个命令行下的文件管理器。Ranger 使用 Python 编写,默认为使用 Vim 风格的按键绑定。
24. Axel
Axel 是 Linux 下一个不错的高速下载工具。支持多线程下载、断点续传,且可以从多个地址或者从一个地址的多个连接来下载同一个文件。非常适合网速不给力时多线程下载,以提高下载速度。
25. Cloc
Cloc 是一款使用 Perl 语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标文件或文件夹中的文件数(files)、空白行数(blank)、注释行数(comment)和代码行数(code)。
更多详细介绍可参考:「代码统计利器 CLOC」 一文。
参考文档

25 个 Linux 下最炫酷又强大的命令行神器,你用过其中哪几个呢?的更多相关文章
- Linux下修改IP、DNS、路由命令行设置
本文最后修改时间:20180313 一.快速修改,重启后设置就没了 ifconfig eth0 192.168.1.22 netmask 255.255.255.0 up route add defa ...
- 我的Windows日常——炫酷的windows组件命令行打开方式
regedit -------注册表编辑器 gpedit.msc-------组策略编辑器 secpol.msc--------本地安全策略 control ----------控制面板 cmd--- ...
- linux下访问window的共享文件,在命令行实现方法
1.挂载共享目录 mount -t cifs //192.168.0.1/aa /tmp/export -o username=text,password=test //192.168.0.1/aa ...
- Linux下的启动oracle的EM的命令
Linux下的启动oracle的EM的命令 1.启动数据库 su - oracle $sqlplus / as sysdba sql>startup 2.启动监听 $lsnrctl LSNRCT ...
- linux下查看当前用户的 三个命令
linux下查看当前用户的 三个命令 1,whoami; 2,id -un; 3,who -H 可以列出当前所有的 NAME (用户名) LINE (窗口列表) TIME(开启时间 ...
- linux 下 apache启动、停止、重启命令
原文:linux 下 apache启动.停止.重启命令 基本的操作方法: 本文假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: 推荐/u ...
- Linux下文件搜索、查找、查看命令
Linux下文件搜索.查找.查看命令 1.最强大的搜索命令:find 查找各种文件的命令 2.在文件资料中查找文件:locate 3.搜索命令所在的目录及别名信息:which 4.搜索命令所在的目录及 ...
- 28 个 Unix/Linux 的命令行神器
28 个 Unix/Linux 的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具(原文链接),有一些是大家熟悉的,有一些是非常有用的,有一些 ...
- 28个Unix/Linux的命令行神器_转
28个Unix/Linux的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具,有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的.这些工具 ...
随机推荐
- Python模块之netmiko
一.简介 此模块用于简化paramiko与网络设备之间的ssh连接,可在windows与Unix平台使用 二.目前支持的设备 (2019.03.07) Regularly tested Arista ...
- 一、Ansible入门篇
一.Ansible简介 Ansible是一个自动化运维的工具 基于python语言编写,因此机器需要具备python环境. 通过ssh的连接方式进行自动化部署,ansible优先使用OpenSSH,在 ...
- 为什么不建议在hbase中使用过多的列簇
我们知道,hbase表可以设置一个至多个列簇(column families),但是为什么说越少的列簇越好呢? 官网原文: HBase currently does not do well with ...
- python学习——列表和元组
一.列表 1)列表介绍 列表是Python内置的一种数据类型. >一组有序项目的集合(从第一个成员序号为0开始依次递增排序) >可变的数据类型(可进行增删改查) >列表中可以包含任何 ...
- ABP虚拟文件系统(VirtualFileSystem)实例------定制菜单栏显示用户姓名
ABP默认的MVC启动模板在登录后, 右上角显示的是用户名: 如果想让它显示用户的姓名该如何做呢?这就需要用到ABP一个非常强大的功能------虚拟文件系统. 前期准备 使用ABP CLI创建一个名 ...
- MSIL实用指南-给字段、属性、方法、类、程序集加Attribute
C#编程中可以给字段.方法.类以及程序集加特性即继承于Attribute的类.这里讲解怎么在IL中给它们加上特性. 生成字段的对应的类是FieldBuilder,生成属性的对应的类是PropertyB ...
- Spring源码解析之ConfigurableApplicationContext
UML图 接口的作用 从上面的UML图中,可以看到 ConfigurableApplicationContext 直接继承了 ApplicationContext, Lifecycle, Closea ...
- HDU4289Control 无向图拆点最大流
/* ** 无向图拆点,求最大流,最大流即为割点个数. */ #include <iostream> #include <cstdio> #include <cstrin ...
- hdu 1540 Tunnel Warfare(线段树)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1540 题意:D代表破坏村庄,R代表修复最后被破坏的那个村庄,Q代表询问包括x在内的最大连续区间是多少. ...
- 牛客小白月赛5 D 阶乘 数学
链接:https://www.nowcoder.com/acm/contest/135/D来源:牛客网 题目描述 输入描述: 输入数据共一行,一个正整数n,意义如“问题描述”. 输出描述: 输出一行描 ...