跳转至内容

从终端复制文本

来自 ArchWiki

大多数成熟的终端模拟器允许用户复制或保存其内容。

通用方法

在图形终端模拟器中,内容通常可以通过鼠标选择,然后使用上下文菜单、编辑菜单或组合键(如 Ctrl+Shift+c)进行复制。

不支持 CLIPBOARD 选择的终端

Xorg

某些模拟器不原生支持 CLIPBOARD 选择,而是将数据复制到 PRIMARY 选择。对于它们,可以使用 xclip

$ xclip -o | xclip -selection clipboard -i

上述命令从 PRIMARY 选择读取数据并将其写入 CLIPBOARD 选择。

其他 剪贴板管理器,如 autocutselAUR,可以在选择缓冲区之间提供自动同步。

Wayland

wl-clipboardclipboardAUR 这样的实用工具可以复制数据到 Wayland 剪贴板。

$ command 2>&1 | wl-copy

截获命令输出

使用 tee 来截获命令的输出。

$ command 2>&1 | tee output-file

command 执行后,output-file 将包含其输出,同时输出也会被显示出来。

访问 Linux 终端历史记录

名为 /dev/ttyN 的原生终端的历史记录可以通过 /dev/vcsN 访问。因此,如果在一个名为 /dev/tty1 的终端中工作,下面的片段可以将历史记录存储在文件 output-file 中。

# cat /dev/vcs1 > output-file

常用模拟器比较

本文或本章节的准确性存在争议。

原因:此表中的某些“否”条目可能不正确。(请在 Talk:Copying text from a terminal#A cheatsheet for common emulators: "No" entries factual accuracy 中讨论)

除非“组合键”列另有说明,否则组合键为 Ctrl+Shift+c

模拟器 选择到 PRIMARY CLIPBOARD
按键组合 上下文菜单 窗口菜单 选择
Alacritty
atermAUR
etermAUR
foot 可选
germinalAUR
Guake
Konsole 可选
lilyterm-gitAUR Ctrl+Delete
lxterminal
mate-terminal
mltermAUR
pantheon-terminal
PuTTY
qterminal
roxtermAUR
rxvt-unicode Ctrl+Alt+c 可选
sakura
st
Terminator
terminology
Termite
Tilda
xfce4-terminal
xterm 可选[1]
Yakuake 可选

特殊情况

putty

putty 可以使用 xclip 方法:只需记住 xclip 命令应该在本地计算机(另一个终端)上运行,而不是在 putty 连接到的远程机器上。

urxvt

选择文本到 CLIPBOARD 需要 selection-to-clipboard perl 扩展。详情请参见 rxvt-unicode#Clipboard

xterm

xterm 中访问 CLIPBOARD 选择需要 额外的步骤

mlterm

除了 Ctrl+Shift+c 之外,如果您不想意外杀死进程,可以使用 Ctrl+Insert

© . This site is unofficial and not affiliated with Arch Linux.

Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.