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


12

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

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


11
猜猜为什么旧的UNIX命令只有两个字母长?:-)
Riccardo Murri

2
@RiccardoMurri这是一个不同的问题:Unix shell完成大约十年的时间。
吉尔斯(Gilles)'所以

4
请注意,撰写Unix时,“网络”并不是蒂姆·伯纳斯·李(Tim Berners-Lee)眼中的一闪。实际上,我们所知道的计算机网络还处于起步阶段。那是一个不同的世界。
dmckee ---前主持人小猫,

8
我所做的一切都是复制和粘贴,这似乎是一个非常危险的习惯;)
Shunz先生2011年

我几乎没有在Vim中使用鼠标进行C&P。只需使用文本命令即可,例如yy,复制(p粘贴)当前行并粘贴。
Martin Scharrer 2011年

Answers:


30

复制粘贴的年龄大于鼠标的年龄。第一个unix编辑器ed拥有t用于将一堆线复制到其他位置的命令。在vi中,有各种命令可以剪切,拉动粘贴文本。要在文件之间复制文本,您需要将要复制的文本保存在一个临时文件中,然后将该临时文件导入到目标文档中,例如,使用wr在ed(:w:rvi)中。要将命令的输出包含在文件中,您可以重定向命令的输出(mycommand >filemycommand >>file)并将该文件导入到您的文档中。vi引入了!命令和朋友,可以直接插入输出而无需临时文件。

对于Vim / Emacs用户来说,将手册页加载到Vim或Emacs中并进行复制粘贴是很常规的。直到Unix足够老,才可以使用Web浏览器,但是在任何地方都适用相同的原理:剪贴板比窗口环境还旧。窗口环境带来的是跨应用程序复制粘贴,只需花一点点精力就可以完成文件复制。


感谢您认真回答我的问题!
marinara

24

简单的答案是:“他们没有复制粘贴”。无论如何,这并不是您理解的方式。

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

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

穿孔卡纸带仍然是此时重要的I / O介质。一种“编辑”纸带的方法是在读取数据时通过诸如的方法sed直接从纸带阅读器中过滤数据。如今sed,它已被用于其他用途,但是在早期,这一点更为重要。 Unix。


2
sed非常适合刮取使用检索的网页wget
LawrenceC

9

不,不是每个人都一样。并非每个人都从Internet复制代码以在其计算机上运行。有些人实际上编写代码,有时将其发布到网络上。

通常,您不必离开文本编辑器即可从其他文件(如手册页)中读取数据,也无需将数据发送出去以执行或发送到文件中。

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


4
+1“有些人实际上写代码”。谢谢。OP只是在不知道脚本做什么的情况下加强了对脚本孩子的复制/粘贴的刻板印象。货物崇拜编程有人称它为。在那之后做事情并不是更困难的事,它只是要求您知道事情,而不是由谷歌驱动的记忆调用。人们过去常常阅读被称为书本的东西,记住信息并了解事物是如何工作的。损失了太多。(我将矛头指向“ Visual ...”,愚弄了程序员)。
lornix 2012年

4

当我开始使用SunOS(在Linux存在之前)时,如果某些事情真的很复杂,我们会在那张可爱的绿色和白色条纸上打印出来,将其带回终端,然后开始工作。我们还使用了使我们可以通过一次拨号运行多个终端的应用程序。(300个波特调制解调器震撼了!)

哦,我们犯了很多单字符错误,而这些错误花了好几天才得以解决。那就是生活。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.