万谱




一文掌握所有命令行,包括73个“冷门但有用”的技巧|GitHub 112k(命令行命令大全)

丰色 发自 凹非寺

量子位 | 公众号 QbitAI

作为程序员,都知道命令行的好处 。

奈何实在学不会、记不住。

今天,恰好有一个专门总结了各种常用和冷门命令行技巧的项目,号称《命令行的艺术》,登上了GitHub热榜 。

一文掌握所有命令行,包括73个“冷门但有用”的技巧|GitHub 112k(命令行命令大全)

一看,确实还有点来头。

光看标星数 ,就有足足112k。

而它的作者,主要由19位程序员组成 ,除此之外 ,还有数十人作出了贡献。

其内容主要都与Linux命令行有关(另有两章专门讲macOS和Windows系统) ,覆盖了基础、日常使用 、文件及数据处理、系统调试、单行命令、“冷门但有用”等多方面的知识和技巧,用很简洁的方式 示例予以了说明 。

一文掌握所有命令行,包括73个“冷门但有用”的技巧|GitHub 112k(命令行命令大全)

最开始,该项目只是在Quora上传播 ,后来挪到GitHub上后便火得一发不可收拾。

由于实在太干货,还被翻译成了17种语言,其中就包括中文  。

一文掌握所有命令行,包括73个“冷门但有用”的技巧|GitHub 112k(命令行命令大全)

那么 ,对于我们那不太熟的命令行技术 ,再挽救一下 ?

Ps. 熟的也可以看哦,毕竟还有一些“奇技淫巧” 。

一文掌握所有命令行

文中所用命令主要基于交互式Bash,一共分为8篇。

基础篇

这篇主要需要你掌握命令行基础知识 ,一共12小项,包括 :

  • 会用man Bash命令查阅手册 ,会用apropos查找文档 ,熟悉一个文本编辑器(推荐Vim ;
  • 懂得> 、 < 、|、>>等符号的区别,会使用通配符,会使用ssh进行远程命令行登录;
  • 熟悉Bash中的任务管理工具、基本的文件管理工具、基本的网络工具;
  • 懂正则表达式,会git ,懂得查找和安装软件包 。

日常使用篇

基础知识完成后 ,这里要教的都是一些非常日常的技巧,一共43条,比如 :

  • ctrl-r可以搜索命令行历史记录,而按下右箭头键可以不立即执行,进行修改 ;
  • ctrl-x ctrl-e可再打开一个编辑器来输入当前正编辑的命令,这对于编写长命令很方便 ;
  • alias命令可以创建常用命令的快捷形式(eg. alias ll=’ls -latr’ ,就创建了一个别名 为ll新命令);
  • 当使用通配符匹配大量文件名时 ,常会遇到“Argument list too long”的错误信息,这种情况下换用find或xargs通常可以解决。

文件及数据处理篇

这篇有35条,比如 :

  • 在当前目录下通过文件名查找一个文件 ,可以使用find . -iname ‘something‘命令;
  • 想要转换Markdown、HTML等不同格式的文件时,使用pandoc;
  • 处理棘手的XML时 ,用上古流传下来的神器xmlstarlet;
  • 更改文件时除了cut和paste ,别忘了join。

系统调试篇

本篇也不少 ,共20条 ,比如 :

  • 进行web调试时用curl和curl -I命令,或者它们的好兄弟wget,或者更潮的httpie ;
  • 查看磁盘使用情况时用ncdu ,它比普通du -sh *更节省时间;
  • 如果删除了一个文件,但通过du发现没有释放预期的磁盘空间,请用如下命令检查文件是否被进程占用  :lsof | grep deleted | grep “filename-of-my-big-file”……

单行命令篇

这部分指的就是我们所说的one-liners命令,一共7条 ,比如:

想计算文本文件第三列中所有数的和时,下面的命令可能会比同等作用的Python代码速度快三倍、代码量少三倍:awk ‘{ x = $3 } END { print x }’ myfile。

冷门但有用篇

这部分是也算全文最长的一篇了,一共73条,各位可各取所需~

一文掌握所有命令行,包括73个“冷门但有用”的技巧|GitHub 112k(命令行命令大全)

macOS篇和Windows篇

最后 ,对于使用macOS和Windows系统的程序员来说 ,也有一些小技巧不容错过。

比如在macOS中,如果你想在终端中将Option键当作alt键使用 ,那么只需打开“偏好设置 -> 描述文件 -> 键盘” ,并勾选“使用Option键作为Meta键”;

由于macOS基于BSD UNIX,许多命令(例如ps,ls ,tail ,awk,sed都和Linux中有微妙的不同,需要注意,具体区别可以通过标题为 “BSD General Commands Manual” 的man页面查看。

而在Windows中,只需安装一个Cygwin ,你就可以直接感受Unix shell的威力了——前6篇介绍的东西复用就ok。

所以在这篇,作者也提供了一些Cygwin命令的使用技巧 。

更多详细内容直接戳下面的地址~

项目主页:
https://github.com/jlevy/the-art-of-command-line

中文版:
https://github.com/jlevy/the-art-of-command-line/blob/master/README-zh.md

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一时间获知前沿科技动态

相关新闻

联系我们
联系我们
分享本页
返回顶部



XML地图