命令行 的历史可以追溯到Unix
操作系统的起源,也就是1969年,Unix诞生之时,前辈们就已经用命令行来和操作系统交互了。
随着计算机性能的飞速发展,图形化的操作界面逐渐成为主流,命令行工具离普通用户越来越远。
这些年来,图形界面的发展不仅仅表现在界面越来越美观,其操作方式也越来越丰富,不只是早期的鼠标和键盘,现在还有触摸屏,手写笔等等一系列新的交互方式。
相对于图形界面,命令行 的发展似乎停滞不前,用了这么多年,似乎还是那几个命令。
不过,从另一个角度来看,Linux系统的那些命令看似简单,却可以通过组合来满足我们各种各样的操作需求,
不得不佩服早期设计命令行的那些大神的智慧。
本篇介绍新的命令行工具和老的命令功能其实差不多,只是更加智能和美观,
能够更好的利用各种新式的命令行终端的能力。
如果老命令用习惯了,可以将新的命令取个和老命了一样的别名来覆盖老命令,比如:
bash
alias new_cmd=old_cmd
下面是目前我搜集到改进的 命令行 工具的列表。
1. bat 取代 cat
bat命令安装方法:
bash
sudo apt install bat
新旧命令的效果对比:
替换旧命令:alias cat='bat'
2. prettyping > ping
prettyping
命令安装方法:
bash
curl -O https://raw.githubusercontent.com/denilsonsa/prettyping/master/prettyping
chmod +x prettyping
prettyping
是一个bash脚本。
新旧命令的效果对比:
替换旧命令:alias ping='prettyping --nolegend'
3. fzf > ctrl+r
fzf
安装方法:
bash
sudo apt install fzf
默认ctrl+r
的效果:
安装fzf
之后,ctrl+r
的效果:
4. htop > top
htop
安装方法:
bash
sudo apt install htop
top
的效果:
htop
的效果:
5. diff-so-fancy > diff
diff-so-fancy
可以通过npm
来安装:
bash
npm i diff-so-fancy
diff-so-fancy
一般用在git diff
中,改善git diff
的显示效果:
bash
git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"
git config --global interactive.diffFilter "diff-so-fancy --patch"
6. fd > find
fd
安装方法:
bash
sudo apt-get install fd-find
fd
比find
使用起来更加简单,而且检索出的结果有颜色区分。
7. ncdu > du
ncdu
是一个查看磁盘使用情况的命令,它的安装方法:
bash
sudo apt-get install ncdu
ncdu
不仅比du
命令更加快速,显示的效果也直观很多。
8. tldr > man
tldr
可以通过npm
或者pip
来安装:
bash
npm install -g tldr
# 或者
pip3 install tldr
tldr
比传统帮助手册man
提供更简单、更平易近人的说明。
9. ag > grep
ag
安装方法:
bash
sudo apt-get install silversearcher-ag
grep
命令其实也非常强大,但是参数太复杂,不经常使用的话,很难记得住。
而ag
命令不仅使用简单,性能也比grep
要好,显示效果也更美观。
10. jq
jq
命令是用来在命令行中以可读的方式显示json
数据的。
因为json
格式流行的比较晚,所以没有显示json
格式数据的老命令。
根据系统环境不同,可从下面的网址下载对应的jq
命令二进制:jq 命令下载
11. 总结
上述所有的命令都在 debian12
系统中实测可用。
如果大家还有其他好用的命令行工具,欢迎提出。