Copying text from a terminal - ArchWiki

# Copying text from a terminal

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Most mature terminal emulators permit users to copy or save their contents.

## General approach

In graphical terminal emulators, contents are typically selectable by mouse, and can then be copied using the context menu, Edit menu or a key combination such as `Ctrl+Shift+C`.

### Terminals without CLIPBOARD selection

#### Xorg

Some emulators do not support the CLIPBOARD selection natively, and copy data to the PRIMARY selection. For them xclip may be used:

    $ xclip -o | xclip -selection clipboard -i

The above command reads data from the PRIMARY selection and writes it to CLIPBOARD selection.

Other clipboard managers such as autocutsel provide automatic synchronization between selection buffers.

### Intercepting commands’s output

Use tee to intercept the output of a command.

    $ command 2>&1 | tee output-file

After the `command` is executed, `output-file` will contain its output.

### Accessing Linux terminal backlog

The backlog of a native terminal named `/dev/ttyN` may be accessed via `/dev/vcsN`. Hence, if one is working in `/dev/tty1`, the following snippet will let store the backlog in a file `output-file`:

    # cat /dev/vcs1 >output-file

## Comparison of common emulators

The factual accuracy of this article or section is disputed.

Reason: Some "No" entries in this table may be wrong. (Discuss in "No"_entries_factual_accuracy Talk:Copying text from a terminal#A cheatsheet for common emulators: "No" entries factual accuracy)

Unless the "Key combination" column states otherwise, the key combination is `Ctrl+Shift+c`.

Emulator | Select to PRIMARY | CLIPBOARD
--- | --- | ---
Key combination | Context menu | Window menu | Select
Alacritty | Yes | Yes | No | No | No
atermAUR | Yes | No | No | No | No
etermAUR | Yes | No | No | No | No
germinalAUR | Yes | Yes | Yes | No | No
Guake | Yes | Yes | Yes | No | No
Konsole | Yes | Yes | Yes | Yes | Optional
lilyterm-gitAUR | Yes | Yes `Ctrl+Delete` | Yes | No | No
lxterminal | Yes | Yes | Yes | Yes | No
mate-terminal | Yes | Yes | Yes | Yes | No
mltermAUR | Yes | Yes | No | No | Yes
pantheon-terminal | Yes | Yes | Yes | No | No
PuTTY | Yes | No | No | No | No
qterminal | Yes | Yes | Yes | Yes | No
roxtermAUR | Yes | Yes | Yes | Yes | No
rxvtAUR | Yes | No | No | No | No
sakura | Yes | Yes | Yes | Yes | No
st | Yes | Yes | No | No | No
Terminator | Yes | Yes | Yes | No | No
terminology | Yes | Yes | Yes | No | No
Termite | Yes | Yes | No | No | No
Tilda | Yes | Yes | Yes | No | No
urxvt | Yes | Yes `Ctrl+Alt+c` | No | No | Optional
xfce4-terminal | Yes | Yes | Yes | Yes | No
xterm | Yes | Optional[1] | No | No | Yes
Yakuake | Yes | Yes | Yes | No | Optional

## Special cases

### putty

The xclip approach works for putty: one just has to remember that the xclip invocation should be done on the local computer (in another terminal), not on the remote machine to which putty is connected.

### urxvt

Selecting text to CLIPBOARD requires the `selection-to-clipboard` perl extension. See Rxvt-unicode#Cut and paste for details.

### xterm

Access to the CLIPBOARD selection in xterm requires additional steps.

### mlterm

In addition to `Ctrl+Shift+c` you can use `Ctrl+Insert` if you do not want to kill processes accidentally.

Category:

- Terminal emulators

Hidden category:

- Pages or sections flagged with Template:Accuracy