本文首发于:微信公众号「运维之美」,公众号 ID:Hi-Linux。

「运维之美」是一个有情怀、有态度,专注于 Linux 运维相关技术文章分享的公众号。公众号致力于为广大运维工作者分享各类技术文章和发布最前沿的科技信息。公众号的核心理念是:分享,我们认为只有分享才能使我们的团体更强大。如果你想第一时间获取最新技术文章,欢迎关注我们!

公众号作者 Mike,一个月薪 3000 的杂工。从事 IT 相关工作 15+ 年,热衷于互联网技术领域,认同开源文化,对运维相关技术有自己独特的见解。很愿意将自己积累的经验、心得、技能与大家分享交流,篇篇干货不要错过哟。如果你想联系到我,可关注公众号获取相关信息。


众所周知,我们在 Linux 下大多数时候是使用命令行来处理任务的。这样不但操作起来效率比较高,而且界面也比较炫酷。下面,我们就给大家推荐一些不但炫酷又好用的 Linux 命令行神器。

1. exa

exa 是一个用来替代 ls 的工具, exa 相比于 ls 增加了很多新的特性,比如:支持不同文件类型可以用不同颜色来展示、exa 比 ls 速度更快一些等。

项目地址:https://github.com/ogham/exa

更多详细介绍可参考:「推荐一个比 ls 命令速度快 100 倍的文件目录浏览神器」 一文。

2. FD

fd 是基于 Rust 开发的一个速度超快的命令行搜索工具,fd 旨在成为 Linux / Unix 下 find 命令的替代品。

fd 虽然不能提供现在 find 命令所有的强大功能,但它也提供了足够强大的功能来满足你日常需要。比如:简洁的语法、彩色的终端输出、超快的查询速度、智能大小写、支持正则表达式以及可并行执行命令等特性。

项目地址:https://github.com/sharkdp/fd

更多详细介绍可参考:「推荐一款比 Find 快 10 倍的搜索工具 FD」 一文。

3. RipGrep

Ripgrep 是命令行下一个基于行的命令行搜索工具,比 ag、grep、ack 速度更快。RipGrep 使用 Rust 开发,可以在多平台下运行,支持 Mac、Linux 和 Windows 等平台。

项目地址:https://github.com/BurntSushi/ripgrep

更多详细介绍可参考:「推荐一款命令行下最快的文本搜索神器 RipGrep」 一文。

4. Tig

Tig 是一款命令行下 Git 的可视化工具,可以很方便地在命令行下以交互的方式完成 Git 的各种操作。

项目地址:https://github.com/jonas/tig

5. FZF

FZF 是使用 GO 语言开发的一款命令行下支持模糊搜索的交互式工具。FZF 可以用来查找任何列表内容,包括文件、Git 分支、进程等。所有的命令行工具都可以生成列表后再通过管道将结果输入到 FZF 上进行模糊搜索。FZF 还可以结合其它工具(比如:rg、bat 和 Fasd )来完成更多的工作。

项目地址:https://github.com/junegunn/fzf

6. FPP

FPP (Facebook Path Picker ) 是由 Fackbook 开源一款终端多文件路径选择工具,它可以用于完善优化终端中的操作, 比如:Git、Grep 等的输出结果。

项目地址:https://github.com/facebook/PathPicker

7. BAT

BAT 是命令行下一款用来显示文件内容的工具,bat 命令功能跟常用命令 cat 类似。只是 bat 功能上更加强大一些,bat 在 cat 命令的基础上加入了行号显示、代码高亮和 Git 集成。

项目地址: https://github.com/sharkdp/bat

更多详细介绍可参考:「推荐一款命令行下支持语法高亮和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 还提供页面服务,可以让你从页面上随时查看某服务器的状态。

项目地址: https://github.com/nicolargo/glances

11. lrzsz

lrzsz 软件包是一个支持 Zmodem 协议的工具包。 其中包含的 rz、sz 命令是通过 ZModem 协议在远程服务器和终端机器间上传下载文件的利器。

lrzsz 支持交互式文件传输,在多重跳板机下传输文件非常好用,不用一级一级传输。

项目地址: https://www.ohse.de/uwe/software/lrzsz.html

更多详细介绍可参考:「在 iTerm2 中使用 Zmodem 实现快速传输文件」 一文。

12. Ncdu

Ncdu (NCurses Disk Usage) 是一个基于 Ncurses 库的 du 命令的界面。它通过大家熟知的 du 命令,为用户提供一个快速且容易被使用的界面。它可以显示磁盘使用的百分比,且允许你使用 ncurses 库的方式在目录之间导航。

项目地址: https://dev.yorhel.nl/ncdu

13. Tmux

Tmux 是一个优秀的终端复用工具,功能类似 GNU Screen,但使用 BSD 许可发布。用户可以通过 Tmux 在一个终端内管理多个分离的会话、窗口及面板,对于同时使用多个命令行,或多个任务时非常方便。

项目地址: https://github.com/tmux/tmux

14. MultiTail

MultiTail 是一个开源的 Ncurses 实用程序,可用于在单个窗口或单个 Shell 中将多个日志文件同时显示到标准输出。

项目地址: https://www.vanheusden.com/multitail

15. ShellCheck

ShellCheck 是一款实用的 Shell 脚本静态检查工具,可以帮助你提前发现并修复语法错误以及不规范的写法。

项目地址:https://github.com/koalaman/shellcheck

16. Explainshell

Explainshell 是一个帮助你解释命令行的网站,它会分析命令的帮助文档,然后根据你想查询的命令参数来抽取对应的解释,然后简洁易懂地显示出来。

项目地址: https://github.com/idank/explainshell

17. Asciinema

Asciinema 是一个终端下非常棒的录屏和回放软件。Asciinema 对终端输入输出进行捕捉,然后以文本的形式来记录和回放。

基于 Asciinema 用文本来记录的特性,使其拥有了非常炫酷的特性。你可以在播放过程中随时暂停,然后对播放器中的文本进行复制或者其它操作。

项目地址:https://github.com/asciinema/asciinema

更多详细介绍可参考:「手把手教你使用终端录屏神器 Asciinema」 一文。

18. Svg-term

一个可以根据 Asciinema 录制文件生成 SVG 动画的小工具。

项目地址: https://github.com/marionebl/svg-term-cli

来看一个实例:将通过 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 写脚本支持更复杂的测试场景。

项目地址:https://github.com/wg/wrk

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 等)使用上更加直观方便。

项目地址: https://github.com/eliangcs/http-prompt

更多详细介绍可参考:「Linux 命令行下交互式 HTTP 客户端--HTTP Prompt」 一文。

22. TLDR

TLDR 全称Too long, Don’t read,翻译成中文就是太长不读。它可以帮助你快速查看命令行工具的使用实例。简而言之,就是 Man 页面的精简版本。

项目地址: https://github.com/tldr-pages/tldr

更多详细介绍可参考:「Linux命令行学习神器tldr」 一文。

23. Ranger

Ranger 是一个命令行下的文件管理器。Ranger 使用 Python 编写,默认为使用 Vim 风格的按键绑定。

项目地址: https://github.com/ranger/ranger

24. Axel

Axel 是 Linux 下一个不错的高速下载工具。支持多线程下载、断点续传,且可以从多个地址或者从一个地址的多个连接来下载同一个文件。非常适合网速不给力时多线程下载,以提高下载速度。

项目地址: https://github.com/axel-download-accelerator/axel

25. Cloc

Cloc 是一款使用 Perl 语言开发的开源代码统计工具,支持多平台使用、多语言识别,能够计算指定目标文件或文件夹中的文件数(files)、空白行数(blank)、注释行数(comment)和代码行数(code)。

项目地址: http://cloc.sourceforge.net/

更多详细介绍可参考:「代码统计利器 CLOC」 一文。

参考文档

  1. http://www.google.com

  2. https://darrenburns.net/posts/tools/

  3. https://darrenburns.net/posts/more-tools

  4. https://darrenburns.net/posts/even-more-tools

  5. https://darrenburns.net/posts/command-line-tools-iv

  6. https://juejin.im/post/5afabcb1f265da0b886d92b6

  7. https://www.cnblogs.com/zqb-all/p/10054594.html

![](https://img2018.cnblogs.com/blog/1747538/201909/1747538-20190924183543648-1007847213.jpg)

25 个 Linux 下最炫酷又强大的命令行神器,你用过其中哪几个呢?的更多相关文章

  1. Linux下修改IP、DNS、路由命令行设置

    本文最后修改时间:20180313 一.快速修改,重启后设置就没了 ifconfig eth0 192.168.1.22 netmask 255.255.255.0 up route add defa ...

  2. 我的Windows日常——炫酷的windows组件命令行打开方式

    regedit -------注册表编辑器 gpedit.msc-------组策略编辑器 secpol.msc--------本地安全策略 control ----------控制面板 cmd--- ...

  3. linux下访问window的共享文件,在命令行实现方法

    1.挂载共享目录 mount -t cifs //192.168.0.1/aa  /tmp/export -o username=text,password=test //192.168.0.1/aa ...

  4. Linux下的启动oracle的EM的命令

    Linux下的启动oracle的EM的命令 1.启动数据库 su - oracle $sqlplus / as sysdba sql>startup 2.启动监听 $lsnrctl LSNRCT ...

  5. linux下查看当前用户的 三个命令

    linux下查看当前用户的 三个命令 1,whoami; 2,id -un; 3,who -H  可以列出当前所有的    NAME (用户名)    LINE (窗口列表)    TIME(开启时间 ...

  6. linux 下 apache启动、停止、重启命令

    原文:linux 下 apache启动.停止.重启命令 基本的操作方法: 本文假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: 推荐/u ...

  7. Linux下文件搜索、查找、查看命令

    Linux下文件搜索.查找.查看命令 1.最强大的搜索命令:find 查找各种文件的命令 2.在文件资料中查找文件:locate 3.搜索命令所在的目录及别名信息:which 4.搜索命令所在的目录及 ...

  8. 28 个 Unix/Linux 的命令行神器

    28 个 Unix/Linux 的命令行神器   下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具(原文链接),有一些是大家熟悉的,有一些是非常有用的,有一些 ...

  9. 28个Unix/Linux的命令行神器_转

    28个Unix/Linux的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具,有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的.这些工具 ...

随机推荐

  1. 基于ZooKeeper的三种分布式锁实现

    [欢迎关注公众号:程序猿讲故事 (codestory),及时接收最新文章] 今天介绍基于ZooKeeper的分布式锁的简单实现,包括阻塞锁和非阻塞锁.同时增加了网上很少介绍的基于节点的非阻塞锁实现,主 ...

  2. Visual Studio 2015&2017 key

    Visual Studio 2015 key Key : HMGNV-WCYXV-X7G9W-YCX63-B98R2 Visual Studio Enterprise 2015 Key :HM6NR- ...

  3. 关于Python虚拟环境与包管理你应该知道的事

    关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...

  4. 2019牛客暑期多校训练营(第十场)J - Wood Processing (斜率优化DP)

    >传送门< 题意 $n$个宽度为$w_{i}$,高为$h_{i}$ 的 木块,要求分成$k$组,对于每组内的所有木块,高度都变为组内最低木块的高度,宽度保持不变,求变化的最小面积. 分析 ...

  5. NanoPi NEO2 学习笔记 1:安装系统、首次开机和一些设置

    初识NEO2 前几天搞到了一块NanoPi NEO2,A53的核心,512M内存,一个千兆网口,非常小的体积,质量也不错,非常满意,140元的价格可以买到这样一块ARM开发板也是非常划算了,非常适合低 ...

  6. 在 Web 级集群中动态调整 Pod 资源限制

    作者阿里云容器平台技术专家 王程阿里云容器平台技术专家 张晓宇(衷源) ## 引子 不知道大家有没有过这样的经历,当我们拥有了一套 Kubernetes 集群,然后开始部署应用的时候,我们应该给容器分 ...

  7. Linux shell脚本判断服务器网络是否可以上网

    Linux shell脚本判断网络畅通 介绍 在编写shell脚本时,有的功能需要确保服务器网络是可以上网才可以往下执行,那么此时就需要有个函数来判断服务器网络状态 我们可以通过curl来访问 www ...

  8. Delphi - cxGrid连接Oracle数据库

    cxGrid连接Oracle数据库 WinFrm窗体中需要添加OraSession .OraQuery和 OraDataSource控件. OraSession中配置数据库连接参数: OraQuery ...

  9. iOS仿写下厨房

    把之前简书的博客搬到博客园了,还是放在一个地方看着舒服. 先看一下做的效果,是不是还不错?(可以看一下早餐那块的轮播,上面盖着一个都是点点的图片,但是它不是和轮播一起滚动的,是盖在轮播上面的,需要在那 ...

  10. spss分析存在共性线后,接下来是怎么分析?

    在进行线性回归分析时,容易出现自变量(解释变量)之间彼此相关,这种情况被称作多重共线性问题. 适度的多重共线性不成问题,但当出现严重共线性问题时,可能导致分析结果不稳定,出现回归系数的符号与实际情况完 ...