航站楼的秘密规则
你好!经过几个月撰写有关终端的深入博客文章后,周二我发布了一本新杂志,名为“终端的秘密规则”! 您可以在这里以 12 美元的价格购买:https://wizardzines.com/zines/terminal,或者在这里购买 15 包我所有的杂志。 这是封面: 目录 这是目录: 为什么是终端? 20年来我每天都在使用终端,但尽管我对终端非常有信心,但我总是对它有一点不安的感觉。通常情况下一切都很好,但有时会出现问题,感觉调查它是不可能的,或者至少会打开一个巨大的蠕虫罐。 所以我开始尝试写下我在终端中遇到的奇怪问题的列表,我意识到终端有很多微小的不一致之处,例如: 有时您可以使用箭头键来移动,但有时按箭头键只会打印 ^((D 有时可以用鼠标选择文本,但有时却不能 有时,您的命令在运行时会保存到历史记录中,有时则不会 有些 shell 允许您使用向上箭头查看上一个命令,有些则不允许 如果您每天使用终端 10 年或 20 年,即使您不太了解 为什么 这些事情发生后,你可能会对它们建立一种直觉。 但对它们有直觉并不等于理解它们为什么会发生。在写这本杂志时,我实际上做了很多工作才能弄清楚到底是什么 正在发生 在终端中能够谈论如何推理它。 规则没有写在任何地方 事实证明,终端工作方式的“规则”(如何编辑输入的命令?如何退出程序?如何修复颜色?)非常难以完全理解,因为“终端”实际上是由许多不同的软件组成的(终端仿真器、操作系统、shell、核心实用程序,例如 grep,以及您安装的所有其他随机终端程序),它们是由不同的人编写的,对于事情应该如何工作有不同的想法。 所以我想写一些东西来解释一下: 终端的 4 个部分(您的 shell、终端仿真器、程序和 TTY 驱动程序)如何组合在一起以使一切正常工作 关于终端中的内容如何工作的一些核心约定 有关如何使用终端程序的大量提示和技巧 这本杂志解释了终端内部最有用的部分 终端内部一团糟。很多事情就是这样,因为有人在 80 年代做出了决定,现在不可能改变,老实说,我认为学习有关终端内部结构的所有内容并不值得。 但有些部分并不难理解,并且确实可以让您在终端中的体验更好,例如: 如果你明白什么 你的外壳 负责,您可以配置您的 shell(或使用不同的 shell!)以更轻松地访问您的历史记录,获得出色的选项卡补全功能等等 如果你明白的话 转义码,当 cat将二进制文件发送到 stdout…
