有时我会和需要使用命令行的朋友交谈,但又被它吓倒了。我从来没有真正觉得我有好的建议(我使用命令行太久了),所以我问了Mastodon 上的一些人:
如果您在过去一三年内不再害怕命令行——什么对您有帮助?
(如果您不记得了,或者您已经舒适地使用命令行 15 年了,则无需回复 – 这个问题不适合您:))
这个列表仍然比我想要的要短一些,但我发布它是希望能收集到更多答案。显然没有一件事适合所有人——不同的人走不同的路。
我认为要变得舒适有两个部分:动机和资源。我将从几个动机开始,然后列出一些资源。
“杀手级应用”
一些人提到了一个“杀手级命令行应用程序”,它促使他们开始在命令行上花费更多时间。例如:
一些人还提到对 GUI 工具(例如使用所有 RAM 并使计算机崩溃的重型 IDE)感到沮丧,并有动力用更轻量级的命令行工具替换它们。
鼓舞人心的命令行魔法
一个人提到,看到其他人使用命令行所做的很酷的事情就会受到激励,例如:
解释一下外壳
有几个人提到了explainshell ,您可以在其中粘贴任何shell 咒语并让它将其分解为不同的部分。
历史记录、制表符补全等:
提到了很多小提示和技巧,可以使在命令行上工作变得更加容易,例如:
- 向上箭头查看上一个命令
- Ctrl+R 搜索您的 bash 历史记录
- 将 bash 历史记录设置为无限制
- 文件名和命令名的制表符补全
- 学习如何使用
less
等寻呼机来阅读手册页或其他大型文本文件(如何搜索、滚动等) - 在 OS X 上使用 pbcopy/pbpaste 从剪贴板复制/粘贴到 stdout/stdin
- 在编辑配置文件之前备份它们
树莓派
有些人开始使用 Raspberry Pi,这样实验更安全,不用担心损坏计算机(您可以擦除 SD 卡并重新开始!)
一个奇特的 shell 设置
许多人表示,当他们开始使用更加用户友好的 shell 设置(例如oh-my-zsh或Fish)时,他们对命令行更加熟悉。
别名
许多人表示,为常用任务创建自己的别名或脚本感觉就像神奇的“哈哈!”时刻,因为:
- 他们不必记住语法
- 然后他们就有了可以轻松调用的最常用命令列表
备忘单以获取示例
许多手册页没有示例,例如openssl s_client手册页没有示例。这使得入门变得更加困难!
人们提到了一些备忘单工具,例如:
例如openssl 的作弊页面真的很棒 – 我认为它几乎包含了我在实践中实际使用过的所有内容(除了openssl s_client
的-servername
选项)。
不要试图去记住
有几个人说他们需要改变他们的方法 – 他们意识到他们可以根据需要查找命令,而不是试图记住所有命令,并且随着时间的推移,他们自然会记住他们最常使用的命令。
(事实上,我最近对学习阅读 x86 汇编有完全相同的认识 – 我正在上课,老师说“是的,每次开始时都要查阅所有内容,最终你会记住最常见的指令”)
维姆
一个人提到,他们开始在命令行上使用 vim 来编辑文件,一旦他们使用终端文本编辑器,使用命令行做其他事情就感觉更自然了。
在桌面上使用 Linux
一位人士表示,他们开始使用 Linux 作为主要的日常驱动程序,解决 Linux 问题有助于他们学习。这也是我在 2004 年左右开始熟悉该命令的方式(我真的很喜欢安装许多不同的 Linux 发行版,试图找到我最喜欢的一个),但我的猜测是,这并不是当今最流行的策略。
研讨会
一些人表示,像Software Carpentry研讨会(为科学家介绍命令行、git 和 Python/R 编程)这样的研讨会可以帮助他们更熟悉命令行。
您可以在这里查看软件木工课程。
书籍和文章
提到的一些:
文章:
图书:
- 有效的linux命令行
- unix 电动工具(可能已经过时)
- Linux 袖珍指南
视频:
- 加里·伯恩哈特 (Gary Bernhardt)销毁了所有软件截屏视频
- 发行管
原文: https://jvns.ca/blog/2023/08/08/what-helps-people-get-comfortable-on-the-command-line-/