$ ls ~yifei/notes/

几个新一代命令行工具

Posted on:

Last modified:

新一代命令行工具的特点是语法简单,符合直觉。他们大多使用 rust 或者 go 编写。

broot

Compared to tree, broot is aware of your terminal size and more suitable for large dir. broot can also show you disk usage with the -w flag.

brew install broot

bat

用来代替 cat

exa

用来代替 ls

duf

显示磁盘信息的工具 https://github.com/muesli/duf

dust

https://github.com/bootandy/dust

sd

sd 可以替代 sed。sd 是用 rust 编写的,所以使用的正则引擎和你在 JS 和 Python 中熟悉的正则 引擎是一致的,也就不需要各种奇奇怪怪的转义了。sd 还具有字符串模式,也就是关闭正则表达式, 这也避免了一些转义的工作量。

安装

# 首先安装 rust,如果没有安装的话
$ curl https://sh.rustup.rs -sSf | sh
$ cargo install sd

使用

# 和 sed 的对比:
sd: sd before after
sed: sed s/before/after/g

# 字符串模式,-s 开启,可以看到括号就是括号
> echo 'lots((([]))) of special chars' | sd -s '((([])))' ''
lots of special chars

# 默认是正则模式
> echo 'lorem ipsum 23   ' | sd '\s+$' ''
lorem ipsum 23

# 使用正则分组
> echo 'cargo +nightly w

choose

用于替代 cut 和 awk(一部分) https://github.com/theryangeary/choose

procs

用于替代 ps

https://github.com/dalance/procs

rga

RipGrepAll

https://github.com/phiresky/ripgrep-all

jq

jq 是一个用于处理 json 的小工具,非常趁手。

navi

https://github.com/denisidoro/navi

References

  1. https://earthly.dev/blog/command-line-tools/
  2. https://jvns.ca/blog/2022/04/12/a-list-of-new-ish--command-line-tools/
WeChat Qr Code

© 2016-2022 Yifei Kong. Powered by ynotes

All contents are under the CC-BY-NC-SA license, if not otherwise specified.

Opinions expressed here are solely my own and do not express the views or opinions of my employer.

友情链接: MySQL 教程站