如何在 Linux 的 Bash shell 中复制和粘贴文本

想要在 Bash shell 的命令行中复制和粘贴?我们将向您展示多种技术,无论您喜欢键盘还是鼠标。无论您是在图形桌面上还是在传统的基于文本的 TTY 上,这些都有效。

用于复制和粘贴的常用键盘快捷键将不起作用

复制和粘贴文本是使用计算机的主要部分。当人们最初几次使用 Linux 计算机时,无论他们来自 Windows 还是 macOS 世界,当他们尝试在终端窗口中复制和粘贴时,他们经常会感到困惑。

在 Windows 中,用于复制突出显示的文本部分并粘贴它。在 macOS 中,您可以使用它来复制和粘贴它。它们遵循相同的约定,即复制和插入。Ctrl+CCtrl+VCommand+CCommand+VCV

这些相同的击键适用于大多数 Linux 图形应用程序,例如编辑器 gedit 或 LibreOffice 办公套件。复制突出显示的文本并将其粘贴到光标处。我们刚接触 Linux 的人可能甚至没有想到这些约定已经贯彻到这些应用程序中。他们使用肌肉记忆中的击键并继续他们的工作。Ctrl+CCtrl+V

一旦我们的新人打开终端窗口并尝试在 Bash shell 命令提示符下复制和粘贴,一切都会改变。 并且早在考虑复制和粘贴之前就被分配了功能。事实上,这些击键早在图形外壳发明之前就被招募了,当时电传打字机(TTY)是一种物理的东西。Ctrl+CCtrl+V

TTY 中的 Ctrl+C 和 Ctrl+V

当TTY是物理设备时,被选为方便的组合键来生成信号。该信号是 SIGINT,它告诉当前进程终止。由于终端窗口是模拟的 TTY,因此该击键组合(以及许多其他组合)已在仿真中保留和复制。请注意,终端窗口是仿真。Bash shell 是在模拟 TTY 中运行的程序。Ctrl+C

我们可以很容易地看到已经分配给 和 的函数。假设您键入以下命令并按“Enter”。Ctrl+CCtrl+V

ls -R /
如何在 Linux 的 Bash shell 中复制和粘贴文本

因为我们使用的是(递归)选项,所以该命令将开始列出每个文件和目录,从根目录开始。片刻之后,您意识到这不是您想要的,因此您通过点击 终止该过程。-RlsCtrl+C

Ctrl+C
如何在 Linux 的 Bash shell 中复制和粘贴文本

进程已终止。屏幕截图中突出显示了可见的证据。它显示为 。lsCtrl+C^C

组合键调用“逐字插入”。这允许您在键入的内容中输入键的表示形式,而不是获得键的效果。若要查看此内容,请尝试以下命令(不要键入逗号)。(例如,若要尝试第一个,请按 Ctrl+V,然后按 Enter。Ctrl+V

Ctrl+V, Enter
Ctrl+V, PgDn
Ctrl+V, RightArrow
Ctrl+V, Esc
如何在 Linux 的 Bash shell 中复制和粘贴文本

顺便说一句,您可能会注意到 Enter 由 .我们之前看到它显示为 .似乎代表.所以可能意味着与 Enter 相同。这是否意味着我们可以通过输入 Enter 来输入 Enter?在终端窗口中尝试一下。你会看到它确实如此。^MCtrl+C^C^CtrlCtrl+MCtrl+M

因此,很明显,当它们已经分配了历史悠久的功能时,我们不能期望并执行复制和粘贴文本。那么我们能用什么呢?Ctrl+CCtrl+V

Ctrl+Shift+CCtrl+Shift+V

很容易记住,因为它们与同类产品非常相似,并且是 和 的直接替代品。Ctrl+Shift+CCtrl+Shift+V Ctrl+CCtrl+V

如果用鼠标突出显示终端窗口中的文本并点击,则会将该文本复制到剪贴板缓冲区中。Ctrl+Shift+C

Ctrl+Shift+C
如何在 Linux 的 Bash shell 中复制和粘贴文本

您可以使用将复制的文本粘贴到同一终端窗口或另一个终端窗口中。Ctrl+Shift+V

Ctrl+Shift+V
如何在 Linux 的 Bash shell 中复制和粘贴文本

您也可以粘贴到图形应用程序中,例如 .但请注意,当您粘贴到应用程序中(而不是终端窗口)时,必须使用 .geditCtrl+V

如何在 Linux 的 Bash shell 中复制和粘贴文本

你也可以走另一条路。您可以突出显示文本并点击 ,然后使用 将其粘贴到终端窗口中。geditCtrl+CCtrl+Shift+V

如何在 Linux 的 Bash shell 中复制和粘贴文本

组合键与 相同,组合与 相同。这里需要注意的是,这些只能在同一终端窗口中使用。Ctrl+InsertCtrl+Shift+CShift+InsertCtrl+Shift+V

使用鼠标:单击鼠标右键

您可以使用鼠标在终端窗口中复制和粘贴。您必须使用鼠标突出显示要复制的文本,那么为什么不使用它来执行复制和粘贴操作呢?

突出显示一些文本后,用鼠标右键单击并从上下文菜单中选择“复制”。

如何在 Linux 的 Bash shell 中复制和粘贴文本

要粘贴复制的文本,请再次用鼠标右键单击,然后从上下文菜单中选择“粘贴”。

如何在 Linux 的 Bash shell 中复制和粘贴文本

文本将粘贴到命令行上光标的位置。在此示例中,相对路径被错误地给出,并且 Bash 无法更改目录。用户错过了路径开头的“~/”。他们键入了“~/”,然后复制了上次尝试中路径的其余部分,并将其粘贴到第二个命令行中。

当他们按 Enter 键时,它们将被移动到目录中。

如何在 Linux 的 Bash shell 中复制和粘贴文本

此示例演示如何粘贴到同一终端窗口中,但您可以使用此右键单击技术粘贴到不同的终端窗口中。您也可以使用此方法粘贴到图形应用程序中。

使用鼠标:中键

有一种使用鼠标进行复制和粘贴的更快方法,只要您的鼠标有一个中间按钮即可。如果你按下滚轮(轻轻地!),它发出咔嗒声,你就得到了一个中间按钮。

突出显示终端窗口中的一些文本,然后短按中间按钮。突出显示的文本将粘贴到命令行上的光标位置。复制和粘贴同时进行。

因此,突出显示一些文本:

如何在 Linux 的 Bash shell 中复制和粘贴文本

然后按中间按钮:

如何在 Linux 的 Bash shell 中复制和粘贴文本

您可以使用此方法在不同的终端窗口之间粘贴,也可以粘贴到图形应用程序中。只需突出显示文本,移动到另一个终端窗口或应用程序,然后短按中间按钮即可。

老派 – 没有鼠标

当你没有鼠标时怎么办?如果您无法突出显示任何文本,如何复制和粘贴它?

Linux 服务器通常配置没有图形桌面环境 (GDE),这意味着您无法访问鼠标。即使在运行图形桌面环境(如 GNOME)的 Linux 计算机上,并且您确实有鼠标,在某些情况下也无法使用鼠标突出显示文本。

例如,您可能已切换到其他 TTY 之一。在现代发行版中,它们位于 (TTY3) 到 (TTY6) 之间。( 将返回到 GDE 会话,并将您带到 GDE 的登录屏幕。Ctrl+Alt+F3Ctrl+Alt+F6Ctrl+Alt+F2Ctrl+Alt+F1

也许您甚至使用正版硬件 TTY 设备连接到 Linux 或 Unix 计算机。

无论哪种方式,这些技术都适合您。这里要记住的一点是,这不是复制和粘贴,而是剪切、复制和粘贴,您只能从当前命令行剪切和复制。当然,您可以使用箭头键滚动浏览历史记录,以找到要剪切、复制和粘贴的命令行。

您可以使用的击键包括:

  • Ctrl+W:剪切光标前的单词,并将其添加到剪贴板缓冲区。
  • Ctrl+K:剪切光标后面的行部分,并将其添加到剪贴板缓冲区。如果光标位于行的开头,它将剪切并复制整行。
  • Ctrl+U:剪切光标前的行部分,并将其添加到剪贴板缓冲区。如果光标位于行的末尾,它将剪切并复制整行。
  • Ctrl+Y:粘贴剪切和复制的最后一个文本。

让我们跳到 TTY3。(之后使用 Ctrl+Alt+F1 返回桌面。

Ctrl+Alt+F3
tty
如何在 Linux 的 Bash shell 中复制和粘贴文本

我们有一个要删除的文件,让我们检查一下它是否在这里。

ls -l file_to_delete.txt
如何在 Linux 的 Bash shell 中复制和粘贴文本

如果我们使用向上箭头键,我们将从命令历史记录中调用我们使用的最后一个命令。我们可以只编辑这一行,但目的是演示剪切、复制和粘贴,因此我们将以略微冗长的方式完成删除文件的任务。

如何在 Linux 的 Bash shell 中复制和粘贴文本

我们将光标移动到文件名的第一个字母,然后按 。这将删除该行的该部分,并将文本复制到剪贴板缓冲区。Ctrl+K

如何在 Linux 的 Bash shell 中复制和粘贴文本

我们将按 Backspace,直到我们清除该行。

如何在 Linux 的 Bash shell 中复制和粘贴文本

我们将输入 以删除文件。rm

如何在 Linux 的 Bash shell 中复制和粘贴文本

现在我们可以点击并粘贴该行的其余部分。Ctrl+Y

如何在 Linux 的 Bash shell 中复制和粘贴文本

这样就完成了我们的命令,我们可以按 Enter 键删除文件。

如何在 Linux 的 Bash shell 中复制和粘贴文本

这种类型的剪切、复制和粘贴不能在附加 TTY 之间使用。例如,您无法在 TTY3 和 TTY4 之间剪切、复制和粘贴。

额外的 TTY 最好被认为是一排并排的物理 TTY。没有办法在不同的物理终端之间剪切和粘贴,在这些仿真中也没有办法这样做。

复制那个,控制

无论您在使用 Linux 计算机时遇到什么情况,都有一种复制和粘贴的方法。你有选择。其中一些是奇怪的选择,但至少有选择。

Linux 命令
文件 焦油 · 光伏 · 猫 · TAC公司 · chmod · 格雷普 · 差异 · 赛德 · AR · 男人 · 推 · 啪 · FSCK公司 · 测试盘 · 序列 · fd · 潘多克 · 光盘 · $PATH · 哎呀 · 招商加盟 · JQ · 折叠 · 优尼克大学 · 日记 · 尾巴 · 统计 · ls的 · FSTAB · 回声 · 收起 · chgrp · 乔恩 · 修订版 · 看 · 字符串 · 类型 · 重命名 · 邮编 · 解压 · 坐骑 · umount · 安装 · 飞盘 · MKFS · RM · rmdir · rsync · DF · GPG公司 · 六 · 纳米 · mkdir · 杜 · ln · 补丁 · 转换 · 克隆 · 切碎 · SRM公司 · SCP · gzip · 聊天室 · 切 · 查找 · 掩膜 · 厕所 ·TR的
过程 别名 · 屏幕 · 返回顶部 · 不错 · 雷妮丝 · 进展 · 斯特雷克 · systemd · TMUX公司 · 奇什 · 历史 · 在 · 批处理 · 免费 · 其中 · DMESG · 瑞士法郎 · 用户模组 · PS · 克鲁特 · xargs · tty · 小指 · LSOF的 · vmstat · 超时 · 墙 · 是 · 杀戮 · 睡眠 · 须藤 · 苏 · 时间 · groupadd · 用户模组 · 团体 · LSHW · 关机 · 重启 · 停止 · 关机 · 帕斯威德 · LSCPU的 · 克朗塔布 · 日期 · BG · FG · 皮多夫 · 诺合 · PMAP的
联网 网络统计 · 平 · 路径 · 知识产权 · SS · whois · fail2ban · 布蒙 · 挖掘 · 手指 · nmap · FTP · 卷曲 · wget · 世界卫生组织 · 呜 · w · iptables · ssh-凯基 · UFW · 阿平 · 防火墙d
正文完