有哪些命令行的软件堪称神器?

来源:互联网 发布:js调用电脑摄像头拍照 编辑:程序博客网 时间:2024/04/28 14:35
作者:int32bit
链接:https://www.zhihu.com/question/59227720/answer/163594782
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

ag比grep、ack更快的递归搜索文件内容。

<img src="https://pic4.zhimg.com/v2-2d95e7195ca70b5714af843bcea5ff2f_b.png" data-rawwidth="1164" data-rawheight="766" class="origin_image zh-lightbox-thumb" width="1164" data-original="https://pic4.zhimg.com/v2-2d95e7195ca70b5714af843bcea5ff2f_r.png">

tig字符模式下交互查看git项目,可以替代git命令。

<img src="https://pic4.zhimg.com/v2-88a9bf7cc2c0543ac7a318b3f270a303_b.png" data-rawwidth="3840" data-rawheight="2088" class="origin_image zh-lightbox-thumb" width="3840" data-original="https://pic4.zhimg.com/v2-88a9bf7cc2c0543ac7a318b3f270a303_r.png">

myclimysql客户端,支持语法高亮和命令补全,效果类似ipython,可以替代mysql命令。

<img src="https://pic3.zhimg.com/v2-7c9e8a304f7d6b20cd18796601188ec2_b.png" data-rawwidth="1400" data-rawheight="740" class="origin_image zh-lightbox-thumb" width="1400" data-original="https://pic3.zhimg.com/v2-7c9e8a304f7d6b20cd18796601188ec2_r.png">

jq: json文件处理以及格式化显示,支持高亮,可以替换python -m json.tool。

<img src="https://pic2.zhimg.com/v2-bd998d0e0eff4fcba2ad6dede0a66bc1_b.png" data-rawwidth="892" data-rawheight="560" class="origin_image zh-lightbox-thumb" width="892" data-original="https://pic2.zhimg.com/v2-bd998d0e0eff4fcba2ad6dede0a66bc1_r.png">

shellcheckshell脚本静态检查工具,能够识别语法错误以及不规范的写法。

<img src="https://pic4.zhimg.com/v2-a57bfe88788470505096693cc822850f_b.png" data-rawwidth="1206" data-rawheight="550" class="origin_image zh-lightbox-thumb" width="1206" data-original="https://pic4.zhimg.com/v2-a57bfe88788470505096693cc822850f_r.png">

yapfGoogle开发的python代码格式规范化工具,支持pep8以及Google代码风格。

mosh:基于UDP的终端连接,可以替代ssh,连接更稳定,即使IP变了,也能自动重连。

fzf命令行下模糊搜索工具,能够交互式智能搜索并选取文件或者内容,配合终端ctrl-r历史命令搜索简直完美。

<img src="https://pic3.zhimg.com/v2-ca1d2f1439df200cd203c498b8f7424e_b.png" data-rawwidth="1664" data-rawheight="1216" class="origin_image zh-lightbox-thumb" width="1664" data-original="https://pic3.zhimg.com/v2-ca1d2f1439df200cd203c498b8f7424e_r.png">

PathPicker(fpp):在命令行输出中自动识别目录和文件,支持交互式,配合git非常有用。

运行以下命令:


git diff HEAD~8 --stat | fpp
<img src="https://pic1.zhimg.com/v2-9e2839952ff4b2eaea8bf10e41b271d8_b.png" data-rawwidth="2432" data-rawheight="1244" class="origin_image zh-lightbox-thumb" width="2432" data-original="https://pic1.zhimg.com/v2-9e2839952ff4b2eaea8bf10e41b271d8_r.png">

htop:提供更美观、更方便的进程监控工具,替代top命令。

<img src="https://pic3.zhimg.com/v2-20e82c610cc311f88a81393662dda322_b.png" data-rawwidth="3840" data-rawheight="2114" class="origin_image zh-lightbox-thumb" width="3840" data-original="https://pic3.zhimg.com/v2-20e82c610cc311f88a81393662dda322_r.png">

axel多线程下载工具,下载文件时可以替代curl、wget。


axel -n 20 http://centos.ustc.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso
<img src="https://pic2.zhimg.com/v2-45889ce235c6243de83edfcf9eb023c9_b.png" data-rawwidth="2212" data-rawheight="1948" class="origin_image zh-lightbox-thumb" width="2212" data-original="https://pic2.zhimg.com/v2-45889ce235c6243de83edfcf9eb023c9_r.png">

sz/rz交互式文件传输,在多重跳板机下传输文件非常好用,不用一级一级传输。

cloc代码统计工具,能够统计代码的空行数、注释行、编程语言。

<img src="https://pic1.zhimg.com/v2-cc70032edcc86b7e0bf4b7c5446e2298_b.png" data-rawwidth="3652" data-rawheight="1164" class="origin_image zh-lightbox-thumb" width="3652" data-original="https://pic1.zhimg.com/v2-cc70032edcc86b7e0bf4b7c5446e2298_r.png">

ccache高速C/C++编译缓存工具,反复编译内核非常有用。使用起来也非常方便:

gcc foo.c

改成:

ccache gcc foo.c

tmux:终端复用工具,替代screen、nohup。

<img src="https://pic4.zhimg.com/v2-c20ad1d3cf32d2e8109fe4b769402e33_b.png" data-rawwidth="5120" data-rawheight="3204" class="origin_image zh-lightbox-thumb" width="5120" data-original="https://pic4.zhimg.com/v2-c20ad1d3cf32d2e8109fe4b769402e33_r.png">

neovim: 替代vim。

script/scriptreplay: 终端会话录制。

script -t 2>time.txt session.typescript # 录制开始# your commandsexit # 录制结束

回放:

scriptreplay -t time.txt session.typescript

you-get:非常强大的媒体下载工具,支持youtube、google+、优酷、芒果TV、腾讯视频、秒拍等视频下载。

还有mac专有的pbcopy/pbpaste:

把命令行输出拷贝到系统粘贴板:

cat test.sh| pbcopy

把系统粘贴板内容拷到终端:

pbpaste

mac下的say命令支持多种语言(英语、普通话、粤语)文本朗读,支持各种销魂恐怖的语气。跑这个命令感受下,小心被吓着了:

for i in `say -v '?' | cut -d ' ' -f 1`; do echo $i && say -v "$i" 'Hello World';done

更具体的列表可参考:int32bit/dotfiles

原创粉丝点击