查看原文
其他

如何轻松记住 Linux 命令

Linux中国
https://linux.cn/article-9093-1.html

对于Linux的使用者来说,无论是菜鸟阶段还是大神阶段,往往都会对于命令行心存戒备:大量需要记忆的命令实在是令人痛苦。掌握命令是使用高效命令行工具的前提。

然而,这种痛苦的学习几乎没有捷径可走,你必须一点一点记忆、练习才行。不过天无绝人之路,在你学习的初级阶段还是有不少工具可以帮到你的忙。





history 



首先我想提名的是命令行工具 history ,使用这条命令时你可以查看你此前使用过的命令。包括使用最为广泛的Bash在内的这种Linux Shell ,都会有一个专门的文件夹来储存你输入过的命令。以 Bash 为例,这个文件通常是 /home/<username>/.bash_history。

你可以使用几乎所有文本编辑器打开这个文件来实现浏览和搜索历史操作的目的,因为这个文件是纯文本格式存储的。





apropos 



除了 history 之外,我们还有另外一个可以帮你“发现”其他命令的命令。这条命令使用之后,会根据你的搜索条件为你列出所有符合选项的命令,同时还会附带一些简短的解释。比如你忽然想知道如何将目录的内容给列出来,这时候你就可以输入下面的命令:

apropos "list directory"

这就搜索出结果了,非常直接。现在我们来测试另外一个操作,给 “directory” 加上复数。

apropos "list directories"

很不幸,这次不行了。这是为什么呢?apropos 其实就是在进行命令描述的搜索,如果你的搜索条件不匹配,那么就会出现没有结果的状况。

还有其他的用法。通过 -a 标志,你可以以更灵活的方式来增加搜索关键字。试试这条命令:

apropos "match pattern"

你会觉得应该会有一些匹配的内容出现,比如 grep 对吗? 其实不会, apropos 只会按照你的要求去搜索,只要不是完全匹配,搜索就会失败。

现在让我们试着用 -a 标志来把单词分割开来。(LCTT 译注:该选项的意思是“and”,即多个关键字都存在,但是不需要正好是连在一起的字符串。)

apropos "match" -a "pattern"

这一下,你可以看到很多期望的结果了。

apropos 是一个很棒的工具,不过你需要留意它的缺陷。





ZSH 



ZSH 其实并不是用于记忆命令的工具。它其实是一种 shell。你可以用 ZSH 来替代 Bash 作为你的命令行 shell。ZSH 包含了自动纠错机制,能在你输入命令的时候给你予提示。开启该功能后,它会提示你相近的选择。在 ZSH 中你可以像往常一样使用命令行,同时你还能享受到极度安全的网络以及其他一些非常好用的特性。充分利用 ZSH 的最简单方法就是使用 Oh-My-ZSH。





速记表 



最后,也可能是最间的方法就是使用 速记表。

有很多在线的速记表,比如这个 可以帮助你快速查询命令。

为了快速查询,你可以寻找图片格式的速记表,然后将它设置为你的桌面墙纸。

这并不是记忆命令的最好方法,但是这么做可以帮你节省在线搜索遗忘命令的时间。

在学习时依赖这些方法,最终你会发现你会越来越少地使用这些工具。没有人能够记住所有的事情,因此偶尔遗忘掉某些东西或者遇到某些没有见过的东西也很正常。这也是这些工具以及因特网存在的意义。


后台回复“加群”,带你进入高手如云交流群


推荐阅读:

10 分钟部署一个 Kubernetes 集群

阿里云深入浅出K8s与CDN排坑指南免费领取

计算机极简发展史

5分钟给你讲清楚Kubernetes

几款实时查看网卡流量的工具

从零认识 iptables

Linux常用命令 &  实用命令万字总结

容易被遗忘的10个Linux命令,很实用!

经典!服务端TCP连接的TIME_WAIT过多

8 个问题彻底搞透 DNS 协议

三张图彻底搞懂iptables和netfilter

强烈安利的几款画图工具

故障排查:K8s中Pod无法正常解析域名

网络排错大讲解~

HTTP/3 原理实战

OVS 和 OVS-DPDK 对比

微软出品的最新K8S学习指南3.0下载



喜欢,就给我一个“在看”



10T 技术资源大放送!包括但不限于:云计算、虚拟化、微服务、大数据、网络、Linux、Docker、Kubernetes、Python、Go、C/C++、Shell、PPT 等。在公众号内回复「1024」,即可免费获取!!

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存