Как в терминале Linux копировать любой текст в буфер обмена

Утилита xclip

Xclip - утилита для работы с буфером обмена из консоли.

Установка в Ubuntu:

sudo apt update
sudo apt upgrade -y
sudo apt install xclip

Данной утилитой можно скопировать любой вывод команды или текст какого-либо файла, чтобы скопировать туда, куда нам нужно. Также сама утилита позволяет вставлять из буфера обмена в консоль.

Использования утилиты на примере SSH pub ключа

Допустим, есть у нас публичный ключ ssh с названием id_rsa.pub, который мы хотим скопировать и вставить в систему для доступа к ней без ввода пароля:

Как в терминале Linux копировать любой текст в буфер обмена

Не совсем удобно копировать данный текст в терминале, можно ошибиться в пробелах и тд. Поэтому, давайте воспользуемся xclip.

Чтобы скопировать в буфер обмена, перенаправляем вывод любой команды в xlip:

cat id_rsa.pub | xclip -selection clipboard

Или короткая версия:

cat id_rsa.pub | xclip -sel clip

Вывод первой команды перенаправли на вход второй. Теперь можно вставить скопированный текст куда угодно, например в Notepad++

Как в терминале Linux копировать любой текст в буфер обмена

Так же можно скопировать в буфер обмена весь текстовый файл, для этого указываем команду xclip с ключом -in (-i)

xclip -selection clipboard -in id_rsa.pub

Или короткая версия:

xclip -sel clip -i id_rsa.pub

С помощью данной утилиты мы можем и вставить текст в терминал из буфера обмена. Для этого нужно указать команду xclip вместе с ключом -out (-o):

xclip -selection clipboard -out

Или короткая версия:

xclip -sel clip -o

Постоянно набирать параметр -sel clip, который указывать на буфер обмена не удобно
Для упрощения ввода создаем постоянные алиасы, для команды копирования и вставки:

gedit  ~/.bash_aliases

Вставляем туда строки:

alias pbcopy='xclip -sel clip'
alias pbpaste='xclip -sel clip -o'
Внимание !
Назвать алиасы можно как угодно.

Сохраняем файл. Если открыть новую сессию терминала, то можно использовать новые, команды. Теперь, чтобы скопировать публичный ключ ssh, нам достаточно ввести следующую команду:

cat id_rsa.pub | pbcopy

Или:

pbcopy -i cat id_rsa.pub

Вставить текст в терминал:

pbpaste

Пример просмотра лог файла

Чтобы просмотреть последние 10 строк файла syslog:

tail -n 10 /var/log/syslog

Чтобы скопировать последние 10 строк файла в буфер обмена, выполняем команду:

tail -n 10 /var/log/syslog | xclip -sel clip

Или используем алиас команды:

tail -n 10 /var/log/syslog | pbcopy
Рейтинг
( Пока оценок нет )