---
author: Julia Evans
category: 技术
comments_data: []
count:
  commentnum: 0
  favtimes: 0
  likes: 0
  sharetimes: 0
  viewnum: 6873
date: '2022-04-18 23:09:00'
editorchoice: false
excerpt: 嗨！今天我 在 twitter 询问有没有一些像 ripgrep、fd、fzf、exa 及 bat 之类的新式命令行工具。
fromurl: https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/
id: 14488
islctt: true
largepic: /images/p/202204/18/230845e83y1wla8feawucp.jpg
permalink: /article-14488-1.html
pic: /images/p/202204/18/230845e83y1wla8feawucp.jpg.thumb.jpg
related: []
reviewer: wxy
selector: lujun9972
summary: 嗨！今天我 在 twitter 询问有没有一些像 ripgrep、fd、fzf、exa 及 bat 之类的新式命令行工具。
tags:
- 命令行工具
thumb: false
title: 新式 Linux 命令行工具大全
titlepic: true
translator: geekpi
updated: '2022-04-18 23:09:00'
---

![](/images/p/202204/18/230845e83y1wla8feawucp.jpg)


嗨！今天我 [在 twitter](https://twitter.com/b0rk/status/1513903221466664962) 询问有没有一些像 `ripgrep`、`fd`、`fzf`、`exa` 及 `bat` 之类的新式命令行工具。


我收到了一大堆回复，都是我没有听说过的工具，所以我想我应该在这里列出一个清单。另外，很多人还指出有一个 [modern-unix](https://github.com/ibraheemdev/modern-unix) 的列表。


### 标准工具的替代物


* [ripgrep](https://github.com/BurntSushi/ripgrep/)、[ag](https://github.com/ggreer/the_silver_searcher)、[ack](https://github.com/beyondgrep/ack3) （`grep`）
* [exa](https://github.com/ogham/exa)、[lsd](https://github.com/Peltoche/lsd) （`ls`）
* [mosh](https://mosh.org/) （`ssh`）
* [bat](https://github.com/sharkdp/bat) （`cat`）
* [delta](https://github.com/dandavison/delta) （`git` 分页器）
* [fd](https://github.com/sharkdp/fd) （`find`）
* [drill](https://www.nlnetlabs.nl/projects/ldns/about/)、[dog](https://github.com/ogham/dog) （`dig`）
* [duf](https://github.com/muesli/duf) （`df`）
* [dust](https://github.com/bootandy/dust)、`ncdu` （`du`）
* [pgcli](https://www.pgcli.com/) （psql）
* [btm](https://github.com/ClementTsang/bottom)、[btop](https://github.com/aristocratos/btop)、[glances](https://github.com/nicolargo/glances)、[gtop](https://github.com/aksakalli/gtop)、[zenith](https://github.com/bvaisvil/zenith) （`top`）
* [tldr](https://tldr.sh/) （类似 `man`）
* [sd](https://github.com/chmln/sd) （`sed`）
* [difftastic](https://github.com/Wilfred/difftastic) （`diff`）
* `mtr` （`traceroute`）
* [plocate](https://plocate.sesse.net/) （`locate`）
* `xxd`、[hexyl](https://github.com/sharkdp/hexyl) （`hexdump`）


### 新的发明


这里有一些不完全是替代标准工具的工具：


* [z](https://github.com/rupa/z)、[fasd](https://github.com/clvv/fasd)、[autojump](https://github.com/wting/autojump)、[zoxide](https://github.com/ajeetdsouza/zoxide) （使查找文件/改变目录更容易的工具）
* [broot](https://github.com/Canop/broot)、[nnn](https://github.com/jarun/nnn)、[ranger](https://github.com/ranger/ranger) （文件管理器）
* [direnv](https://github.com/direnv/direnv) （根据当前目录加载环境变量）
* [fzf](https://github.com/junegunn/fzf)、[peco](https://github.com/peco/peco) （“模糊查找器”）
* [croc](https://github.com/schollz/croc) 和 [magic-wormhole](https://github.com/magic-wormhole/magic-wormhole) （将文件从一台计算机发送到另一台）
* [hyperfine](https://github.com/sharkdp/hyperfine) 基准测试
* [httpie](https://httpie.io/)、[curlie](https://github.com/rs/curlie)、[xh](https://github.com/ducaale/xh) （用于发出 HTTP 请求）
* [entr](https://github.com/eradman/entr) （当文件改变时运行任意命令）
* [asdf](https://github.com/asdf-vm/asdf) （多语言的版本管理器）
* [tig](https://github.com/jonas/tig)、[lazygit](https://github.com/jesseduffield/lazygit) （`git` 的交互界面）
* [lazydocker](https://github.com/jesseduffield/lazydocker) （`docker` 的交互式界面）
* [choose](https://github.com/theryangeary/choose) （基本版的 `awk`/`cut`）
* [ctop](https://github.com/bcicen/ctop) （容器的 `top`）
* [fuck](https://github.com/nvbn/thefuck) （自动纠正命令行错误）
* [tmate](https://tmate.io/) （与朋友分享你的终端）
* [lnav](https://github.com/tstack/lnav)、[angle-grinder](https://github.com/rcoh/angle-grinder) （管理日志的工具）
* [mdp](https://github.com/visit1985/mdp)、[glow](https://github.com/charmbracelet/glow) （在终端显示 Markdown 的方法）
* `pbcopy`/`pbpaste`（用于剪贴板和标准输入/标准输出之间）可能不是“新的”，但被提到了很多次。你可以使用 `xclip` 在 Linux 上做同样的事情


### JSON/YAML/CSV 工具


* [jq](https://stedolan.github.io/jq/) （一个很好的 JSON 处理工具）
* [jc](https://github.com/kellyjonbrazil/jc) （将各种工具的输出转换成 JSON）
* [jo](https://github.com/jpmens/jo) （创建 JSON 对象）
* [yq](https://github.com/mikefarah/yq) （类似 `jq`，但用于 YAML），还有 [另一个 yq](https://github.com/kislyuk/yq)
* [fq](https://github.com/wader/fq) （类似 `jq`，但用于二进制）
* [htmlq](https://github.com/mgdm/htmlq) （类似 `jq`，但用于 HTML）
* [fx](https://github.com/antonmedv/fx) （交互式 JSON 工具）
* [jless](https://github.com/PaulJuliusMartinez/jless) （JSON 分页器）
* [xsv](https://github.com/BurntSushi/xsv) （一个用于 CSV 文件的命令行工具，来自 burntsushi）
* [visidata](https://www.visidata.org/) （“一个用于表格数据的交互式多功能工具”）
* [miller](https://github.com/johnkerl/miller) （“像用于 CSV/TSV/JSON/JSON 的 awk/sed/cut/join/sort”）


### grep 工具


* [pdfgrep](https://pdfgrep.org/) （用于 PDF 的 `grep`）
* [gron](https://github.com/tomnomnom/gron) （用于 JSON 的 `grep`）
* [ripgrep-all](https://github.com/phiresky/ripgrep-all) （`ripgrep`，但也用于 PDF、zip、电子书等）


### 不太新的工具


下面是人们提到的一些不那么新的工具，但不那么知名：


* `pv` （“管道查看程序”，给你一个管道的进度条）
* `vidir` （来自 [moreutils](https://joeyh.name/code/moreutils)，可以让你在 `vim` 中批量重命名/删除文件）
* `sponge`、`ts`、`parallel` （也来自 moreutils）


### 我的一些最爱


我最喜欢的是 `entr`、`ripgrep`、`git-delta`、`httpie`、`plocate` 和 `jq`，这些都是我已经使用过的。


我也想尝试一下 `direnv`、`btm`、`z`、`xsv` 和 `duf`，但我认为我知道到的最令人兴奋的工具是 `vidir`。




---


via: <https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/>


作者：[Julia Evans](https://jvns.ca/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出