Copying text from a terminal (Русский)
Большинство современных эмуляторов терминала позволяют пользователям копировать или сохранять их содержимое.
Общий подход
В графических эмуляторах терминалов содержимое обычно выделяется с помощью мыши и может быть скопировано с помощью контекстного меню, меню Правка или комбинации клавиш, например Ctrl+Shift+C
.
Xorg
Некоторые эмуляторы не поддерживают буфера CLIPBOARD нативно и копируют данные в буфер PRIMARY. Для них можно использовать xclip:
$ xclip -o | xclip -selection clipboard -i
Эта команда читает данные из буфера PRIMARY и записывает в буфер CLIPBOARD.
Некоторые менеджеры буфера обмена (например autocutsel) предоставляют автоматическую синхронизацию между этими двумя буферами.
Перехват вывода команды
Команда tee позволяет скопировать вывод команды в файл.
$ команда 2>&1 | tee файл-для-вывода
Получение вывода Linux-терминала
Прочитать буфер вывода нативного терминала /dev/ttyN
можно в соответствующем файле /dev/vcsN
. Например, сохранить содержимое терминала /dev/tty1
в файл можно так:
# cat /dev/vcs1 >файл-для-вывода
Сравнение популярных эмуляторов терминала
Сочетание клавиш для копирования у большинства терминалов Ctrl+Shift+c
, если не указано иное.
Эмулятор | Выделение в PRIMARY | CLIPBOARD | ||||
---|---|---|---|---|---|---|
Сочетание клавиш | Контекстное меню | Меню окна | Выделение | |||
Alacritty | Да | Да | Нет | Нет | Нет | |
Да | Нет | Нет | Нет | Нет | ||
Да | Нет | Нет | Нет | Нет | ||
Да | Да | Да | Нет | Нет | ||
Guake | Да | Да | Да | Нет | Нет | |
Konsole | Да | Да | Да | Да | ||
lilyterm-gitAUR | Да | Да | Да | Нет | Нет | |
Да | Да | Да | Да | Нет | ||
Да | Да | Да | Да | Нет | ||
mltermAUR | Да | Да | Нет | Нет | Да | |
Да | Да | Да | Нет | Нет | ||
PuTTY | Да | Нет | Нет | Нет | Нет | |
Да | Да | Да | Да | Нет | ||
Да | Да | Да | Да | Нет | ||
Да | Нет | Нет | Нет | Нет | ||
Да | Да | Да | Да | Нет | ||
st | Да | Да | Нет | Нет | Нет | |
Terminator | Да | Да | Да | Нет | Нет | |
Да | Да | Да | Нет | Нет | ||
Termite | Да | Да | Нет | Нет | Нет | |
Tilda | Да | Да | Да | Нет | Нет | |
urxvt | Да | Да Ctrl+Alt+c | Нет | Нет | ||
Да | Да | Да | Да | Нет | ||
xterm | Да | Нет | Нет | Да | ||
Yakuake | Да | Да | Да | Нет |
Особые случаи
putty
Подход xclip работает и для putty: нужно только помнить, что вызов xclip должен быть выполнен на локальном компьютере (в другом терминале), а не на удалённой машине, к которой подключен putty.
urxvt
Для выделения текста в CLIPBOARD требуется perl-расширение selection-to-clipboard. Подробнее смотрите rxvt-unicode (Русский)#Вырезать и вставить.
xterm
Доступ к буферу CLIPBOARD в xterm требует дополнительных шагов.
mlterm
В дополнение к Ctrl+Shift+c
также доступно сочетание клавиш , если вы не хотите случайно завершить процесс.