🚀提升生产力:是时候升级你的命令行工具了

命令行 的历史可以追溯到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

fdfind使用起来更加简单,而且检索出的结果有颜色区分。

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 系统中实测可用。

如果大家还有其他好用的命令行工具,欢迎提出。

相关推荐
一技安身8 小时前
【信创】银河麒麟V10、统信UOS解压7Z文件
linux·运维·服务器
奔跑的架构师8 小时前
[A-50]ARMv9/v8-DVFS系统架构
linux·arm开发·架构·系统架构·arm
迷途呀9 小时前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
赴生-9 小时前
Liunx 操作系统 进程概念(上)
linux
binqian9 小时前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌9 小时前
Shell编程——if条件语句
linux·运维·shell
Dawn-bit10 小时前
Linux 运维基础扩展:跳板机、堡垒机与物理服务器全流程
linux·运维·服务器·云计算·运维开发
新时代牛马10 小时前
Linux 定时任务:crontab、anacron 与systemd timer
linux·运维·服务器
mounter62510 小时前
Linux 7.2 引入更灵活的块设备错误注入机制
linux·linux kernel·kernel·disk·error injection
cpolar技术支持11 小时前
Docker 容器启动失败怎么查?端口、日志、权限与网络排障完整教程
linux·docker·容器·cpolar·网络排障