他们是如何在鼠标和复制粘贴之前设法驱动 Unix 计算机的?

mar*_*ara 13 shell terminal text-processing history

由于 Unix 已有 40 年的历史,因此 Unix 比计算机鼠标的发明还要早。(实际上只有 3 年,如果 Unix 是 1969 年的,而鼠标是 1972 年的。)世界上的新用户如何在没有复制和粘贴的情况下在 Unix 上做任何事情?我知道他们总是有一个带有复制/粘贴功能的文本编辑器,但我在 Linux 上所做的一切都是从 Web 浏览器复制,然后粘贴(从 CLIPBOARD)到 vim 或 gedit 或 gnome 终端。你是一样的,对吧?

我无法想象将 man 文件加载到 vim 中,将代码从中复制并粘贴到临时缓冲区中,然后让 bash 执行该缓冲区。也许他们从未离开过 emacs;这就是答案吗?

Gil*_*il' 30

复制粘贴比鼠标更古老。第一个 Unix 编辑器ed具有将t一堆行复制到不同位置的命令。在 vi 中,有多种命令可以剪切、拉取粘贴文本。要在文件之间复制文本,您需要将要复制的文本保存在一个临时文件中,然后将该临时文件导入到目标文档中,例如使用wrin ed(:w:rin vi)。要将命令的输出包含在文件中,您需要重定向其输出(mycommand >filemycommand >>file)并将该文件导入到您的文档中;vi 引入了!命令和朋友直接插入输出,不需要临时文件。

将手册页加载到 Vim 或 Emacs 中并从中复制粘贴对于 Vim/Emacs 用户来说是例行公事。直到 Unix 老到可以喝酒时,Web 浏览器才存在,但同样的原则适用于任何地方:剪贴板比窗口环境更古老。窗口环境带来的是跨应用程序的复制粘贴,只需通过文件稍加努力即可完成。


War*_*ung 24

简单的答案是,“他们没有复制和粘贴。” 反正不是你理解的方式。

最早的 Unix 系统使用电传打字机哑终端进行交互使用。这些设备没有强大的终端命令集,使后来的创新 (!) 成为vi可能。(是的,曾几何时vi是科技含量高。)因此,你没有办法被复制视觉标记文本或切断。

缺乏智能终端,早期的Unix系统提供了一个行编辑器ed。你必须最接近的剪切和粘贴使用edt命令,使用它可以通过数指明线是牛逼ransferred(复制)到文件中的其他位置。

打孔卡纸带此时仍然是重要的 I/O 介质。“编辑”纸带的一种方法是通过诸如sed直接从纸带阅读器读取数据的东西过滤其数据。今天已sed用于其他事情,但在早期更重要Unix。

  • `sed` 非常适合抓取使用 `wget` 检索的网页。 (2认同)

Cal*_*leb 9

不,不是每个人都一样。不是每个人都从互联网上复制代码以在他们的机器上运行。有些人实际上编写代码,有时将其发布到网络上。

您通常不必离开文本编辑器来从其他文件(例如手册页)读取数据或将数据发送出去以供执行或发送到文件。

此外,即使在今天,我也经常在不使用鼠标的情况下在终端中进行跨应用程序复制粘贴。GNU-screentmux支持使用键盘从屏幕上选择内容到剪贴板并将它们粘贴到外壳或其他终端窗口中的其他程序,或保留以备后用。

  • +1“有些人实际上在编写代码”。谢谢你。OP 只是强化了脚本小子在不知道它做什么的情况下复制/粘贴东西的刻板印象。有人称之为 Cargo-Cult 编程。“那时”做事情并不难,它只需要你知道事情,而不是谷歌驱动的记忆回忆。人们过去常常阅读称为书籍的东西,记住信息并了解事物的运作方式。失去了这么多。(我将指责“Visual ...”,贬低程序员)。 (4认同)