一文掌握所有命令行,包括 73 个“冷门但有用”的技巧
导读:作为程序员,都知道命令行的好处。 奈何实在学不会、记不住。 今天,恰好有一个专门总结了各种常用和冷门命令行技巧的项目,号称《命令行的艺术》,登上了 GitHub 热榜。
作为程序员,都知道命令行的好处。
奈何实在学不会、记不住。
今天,恰好有一个专门总结了各种常用和冷门命令行技巧的项目,号称《命令行的艺术》,登上了 GitHub 热榜。
一看,确实还有点来头。
光看标星数,就有足足112k。
而它的作者,主要由 19 位程序员组成,除此之外,还有数十人作出了贡献。
其内容主要都与 Linux 命令行有关(另有两章专门讲 macOS 和 Windows 系统),覆盖了基础、日常使用、文件及数据处理、系统调试、单行命令、" 冷门但有用 " 等多方面的知识和技巧,用很简洁的方式 + 示例予以了说明。
最开始,该项目只是在 Quora 上传播,后来挪到 GitHub 上后便火得一发不可收拾。
由于实在太干货,还被翻译成了17 种语言,其中就包括中文。
那么,对于我们那不太熟的命令行技术,再挽救一下?
Ps. 熟的也可以看哦,毕竟还有一些 " 奇技淫巧 "。
基础篇
这篇主要需要你掌握命令行基础知识,一共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条,各位可各取所需~
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
版权声明:本文部分来自互联网,由小编精心所写,本文地址:http://www.zhubian88.cn/smbk/66335.html,如需转载,请注明出处!