探索 Unix/Linux 中最古老的行编辑器
ed 是 Unix 和类 Unix 系统(如 Linux)中最早期的文本编辑器之一,由 Ken Thompson 于 1969 年开发。它是一个行编辑器(line editor),与现代常见的全屏编辑器(如 Vim、Nano 或 Emacs)不同,ed 不会直接显示整个文件内容,而是通过命令逐行操作文本。
尽管今天很少有人日常使用 ed,但它在操作系统历史和 POSIX 标准中具有重要地位——几乎所有符合 POSIX 的系统都必须包含 ed。
ed 以“命令-响应”模式运行:
a 添加、d 删除、p 打印)例如,启动 ed 后你看到的只是一个空提示符(或没有提示符),你需要主动输入命令才能查看或修改内容。
以下是在终端中使用 ed 的典型流程:
$ ed hello.txt a Hello, world! . w q
解释:
ed hello.txt:用 ed 打开(或创建)文件 hello.txta:进入追加模式Hello, world!.(单独一行):结束输入w:将缓冲区内容写入文件q:退出 ed著名计算机科学家 Brian Kernighan 曾开玩笑说:“ed 的用户界面是反人类的。” 但正是这种极简设计,体现了 Unix “做一件事并做好”的哲学。
如今,你甚至可以用 ed 编写完整的程序——虽然没人推荐这么做 😄