我的终端环境:高效 shell 命令(四)之 20+1 个 modern-unix 命令

本篇文章是介绍 modern-unix 仓库剩余的 20 个命令的上篇,外加 1 比 modern-unix 中更易于使用的命令。

B 站视频:

系列阅读:

更多待续...

命令集合

第一篇文章中推荐一个 github 仓库:modern-unix,其中收录了大量的更具现代风格的命令。例如,最常用的命令,如 ls、cd、grep、find 等等命令,这个仓库都提供了合适的替代命令。

针对我们日常工作最常用的命令,我已用了三篇文章,从不同场景角度出发,介绍了它们的使用,从而提升终端的使用效率。毫无疑问,这些命令更具现代风格。

除前面已经介绍的命令,本文将会极简的方式介绍下剩余的其他命令。

一键安装

一键安装剩余的 20 + 1 (lf) 个命令,如下所示:

zsh 复制代码
brew install lsd git-delta dust duf broot ag mcfly choose-rust sd cheat tldr bottom glances gtop hyperfine gping procs curlie xh dog lf

lsd

lsd,号称 "下一代 ls 命令",算是对 GNU ls 的重写,且与 ls 兼容,和 exa 功能上类似。

zsh 复制代码
lsd --long --header --git

{{< image "./2023-11-07-high-productivity-shell-commands-part4-01.png" >}}

delta

delta,可用于支持 git 、diff 和 git grep 的语法高亮和分屏对比;

与 diff 一起使用:

go 复制代码
diff -u main1.go main2.go | delta

与 git diff 一起使用

sql 复制代码
git show

dust

dust - 使用 rust 实现,du+rust = dust,更直观的 du 命令。默认行为,以找到最大文件为第一选择。

duf

duf - 视觉体验更佳 df,可作为 df 的替代品,按类型分组展示。

broof

broot - 终端文件浏览器,类似于 mac 的 finder 的终端版本。

我觉得,如果说到命令行文件浏览器,lf 体验更佳,是一个更不错的选择,比起 broot,支持的 vim 方式导航和搜索。有兴趣也可以了解下。

ag

ag - 类似于 ack 的代码搜索工具,但搜索速度更快。其实,和 rg 有点类似,但做了个压测,性能没有 rg 优秀。

mcfly

mcfly - mcfly 智能搜索引擎取代 CTRL-R 默认的搜索引擎,会考虑你的工作环境和历史命令等,通过一个小型网络进行优先级排序。

choose

choose - 快速且易于使用的 cut 命令。

sd

sd - 更直观的 "选择替换" 命令,可用于替换 sed。

bash 复制代码
sd old new filename

cheat

cheat - 是 unix 命令的备忘录,是一个命令行辅助工具。

tldr

tldr - "too long, don't read",和 cheat 类似,列出某个命令的常见使用案例。它是一个社区驱动的项目。

bottom

bottom - 运行于终端的跨平台系统监视器,可视化。

gtop

gtop - 和 bottom 有点类似,系统监控面板。

glances

glances - 可用于替代 top/htop,监控 GNU/Linux、BSD、Mac OS 和 windows 系统。

hyperfine

hyerfine - 压测工具,可同时压测多个命令。

gping

gping - ping 的终端可视化版本,体验不错,值得一试;

procs

procs - rust 编写的 ps 的替代版本。

curlie

curlie - http 客户端,号称是,兼具 curl 的强大与 httpie 的易用性。

xh

xh - 兼顾 httpie 的易用性,同时注重高性能的 http 客户端。

dog

dog - 依旧是 rust 实现的 DNS 分析工具 dig 的替代版本。

相关推荐
一点技术13 小时前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统
理人综艺好会13 小时前
Web学习之用户认证
前端·学习
We་ct14 小时前
LeetCode 36. 有效的数独:Set实现哈希表最优解
前端·算法·leetcode·typescript·散列表
weixin_3954489114 小时前
main.c_cursor_0129
前端·网络·算法
RANCE_atttackkk14 小时前
Springboot+langchain4j的RAG检索增强生成
java·开发语言·spring boot·后端·spring·ai·ai编程
2401_8590490814 小时前
git submodule update --init --recursive无法拉取解决
前端·chrome·git
这是个栗子15 小时前
【Vue代码分析】前端动态路由传参与可选参数标记:实现“添加/查看”模式的灵活路由配置
前端·javascript·vue.js
刘一说15 小时前
Vue 动态路由参数丢失问题详解:为什么 `:id` 拿不到值?
前端·javascript·vue.js
熊猫钓鱼>_>15 小时前
动态网站发布部署核心问题详解
前端·nginx·容器化·网页开发·云服务器·静态部署
方也_arkling15 小时前
elementPlus按需导入配置
前端·javascript·vue.js