Linux中哪些工具堪称神器?
作者:int32bit
www.zhihu.com/question/59227720
ag:比grep、ack更快的递归搜索文件内容。

Github地址:
https://github.com/ggreer/the_silver_searcher
tig:字符模式下交互查看git项目,可以替代git命令。

Github地址:
https://github.com/jonas/tig
mycli:mysql客户端,支持语法高亮和命令补全,效果类似ipython,可以替代mysql命令。

Github地址:
https://github.com/dbcli/mycli
jq: json文件处理以及格式化显示,支持高亮,可以替换python -m json.tool。

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

Github地址:
https://github.com/koalaman/shellcheck
yapf:Google开发的python代码格式规范化工具,支持pep8以及Google代码风格。
Github地址:
https://github.com/google/yapf
mosh:基于UDP的终端连接,可以替代ssh,连接更稳定,即使IP变了,也能自动重连。
终端连接参考这篇:十分钟学会SSH+SFTP操作终端,告别XShell
地址:
https://mosh.org/#getting
fzf:命令行下模糊搜索工具,能够交互式智能搜索并选取文件或者内容,配合终端ctrl-r历史命令搜索简直完美。

Github地址:
https://github.com/junegunn/fzf
PathPicker(fpp):在命令行输出中自动识别目录和文件,支持交互式,配合git非常有用。
运行以下命令:
git diff HEAD~8 --stat | fpp

Github地址:
https://github.com/facebook/PathPicker
htop: 提供更美观、更方便的进程监控工具,替代top命令。

地址:
https://hisham.hm/htop/
axel:多线程下载工具,下载文件时可以替代curl、wget。
axel -n 20 http://centos.ustc.edu.cn/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso

sz/rz:交互式文件传输,在多重跳板机下传输文件非常好用,不用一级一级传输。
cloc:代码统计工具,能够统计代码的空行数、注释行、编程语言。

地址:
http://cloc.sourceforge.net/
ccache:高速C/C++编译缓存工具,反复编译内核非常有用。使用起来也非常方便:
gcc foo.c
改成:
ccache gcc foo.c
地址:
https://ccache.dev/
tmux:终端复用工具,替代screen、nohup。

neovim: 替代vim。
地址:
https://neovim.io/
script/scriptreplay: 终端会话录制。
script -t 2>time.txt session.typescript # 录制开始
# your commands
exit # 录制结束
回放:
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
multitail:多重 tail
通常你不止一个日志文件要监控,怎么办?终端软件里开多个 tab 太占地方,可以试试这个工具:

上面演示了同时监控两个日志文件,有高亮显示不同内容,当然还可以同时监控更多日志:

地址:
https://www.vanheusden.com/multitail/
推荐阅读(点击即可跳转阅读)
2. 面试题内容聚合
3. 设计模式内容聚合
4. Mybatis内容聚合
5. 多线程内容聚合
Linux中哪些工具堪称神器?的更多相关文章
- [转帖]Linux中awk工具的使用
Linux中awk工具的使用 2018年10月09日 17:26:20 谢公子 阅读数 2170更多 分类专栏: linux系统安全 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权 ...
- linux中awk工具的使用(转)
add by zhj: awk很强大,它是一个简单的编程语言,国外有本专门的书介绍它的用法.<effective awk programming>,它支持整型,字符串型,数组,变量在使用前 ...
- linux中的工具
远程连接linux的工具: 命令行: SecureCRT putty XShell(商业环境付费) 图形界面:WinSCP SecureFX 远程连接window服务器工具: FileZilla ...
- linux中grep工具
正则表达式 以前我们用grep在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义.其实grep还可以找出符合某个模式(Pattern)的一类字符串.例如找出所有符合xxxxx@xxxx. ...
- Linux 笔记 - 第十三章 Linux 系统日常管理之(四)Linux 中 rsync 工具和网络配置
博客地址:http://www.moonxy.com 一.前言 rsync 命令是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件,可以理解为 remote sync(远程同步) ...
- Kali Linux中下载工具Axel的安装和使用
前言: Axel是一个多线程的HTTP/FTP下载工具,支持断点续传. Axel的安装 apt-get install axel Axel的卸载 apt remove axel 安装完成之后输入 ax ...
- Linux中dpkg工具update-alternatives实现符号链接软件版本的切换(转)
一.功能作用 update-alternatives是dpkg的实用工具,用来维护系统命令的符号链接,以决定系统默认使用什么命令. 在Debian系统中,我们可能会同时安装有很多功能类似的程序和可选配 ...
- linux中awk工具的使用(转载)
awk是一个非常好用的数据处理工具.相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,awk处理方式如下: $ awk '条件类型1{动作1} 条件类型2{动作2} ...' ...
- linux中awk工具的使用
awk是一个非常好用的数据处理工具.相较于sed常常一整行处理,awk则比较倾向于一行当中分成数个“字段”处理,awk处理方式如下: $ awk '条件类型1{动作1} 条件类型2{动作2} ...' ...
随机推荐
- Bug复盘:接口异步返回的重要性
前言 最近接收了一个老项目,突然甲方 QA 报了一个 bug,连续请求 60 次,成功 8 次,后面的 52 次全部失败,而且成功的 case 返回时间普遍较长.看了日志,并非业务上的异常.这让刚毕业 ...
- 《Java算法》贪心算法
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解. 贪心算法的经典案例: 跳跃游戏: 给定一个非负整 ...
- python基础知识第六篇(知识点总结)
####################### 整理 ################# # 一.数字# int(..) # 二.字符串# replace(替换)/find/join/strip(移除 ...
- ActiveMQ消息队列从入门到实践(4)—使用Spring JMS收发消息
Java消息服务(Java Message Service ,JMS)是一个Java标准,定义了使用消息代理的通用API .在JMS出现之前,每个消息代理都有私有的API,这就使得不同代理之间的消息代 ...
- 千呼万唤始出来——uFUN开发板2.0开箱评测
前言 今年3月,我参与了面包板社区组织的第一批uFUN开发板评测活动,并有幸能获得试用机会,那是我第一次了解到uFUN这个项目及背后的故事,4月份,uFUN 2.0版本来了,收到了张工送的一块样板,后 ...
- Cannot read property 'createElement' of undefined
场景: 架构:React+TS+DVA 具体场景: 在将之前后缀为jsx的组件转化为tsx后缀的组件时,抛出Cannot read property 'createElement' of unde ...
- JavaFX如何为按钮设置快捷键?
JavaFX为按钮设置快捷键的方式有很多,先说下常见的一种. 第一种: KeyCodeCombination kc1 = new KeyCodeCombination(KeyCode.W, KeyCo ...
- 5. abp集成asp.net core
一.前言 参照前篇<4. abp中的asp.net core模块剖析>,首先放张图,这也是asp.net core框架上MVC模块的扩展点 二.abp的mvc对象 AbpAspNetCor ...
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换3
5 3D旋转 在三维变形中,我们可以让元素在任何轴旋转.为此,CSS3新增了三个旋转函数:rotateX().rotateY()和rotateZ().使用rotateX()函数允许一个元素围绕X轴旋 ...
- vue中Enter触发登录事件和javascript中Enter触发点击事件
created(){ window.addEventListener('keydown', this.handleKeyDown, true)//开启监听键盘按下事件 } 在methods中当keyC ...