Как передать содержимое буфера обмена в файл?


20

Я хочу передать / сбросить содержимое (особенно текст) буфера обмена / Ctrl+ Cв файл, предпочтительно используя Bash или Perl (по порядку). Я бы предпочел не использовать приложения с графическим интерфейсом, пожалуйста.

Ответы:


26

Как передать содержимое буфера обмена в файл?

Вы можете сделать это с помощью xsel. Введите в терминал, чтобы установить его,

sudo apt-get install xsel

Чтобы поместить содержимое clipboard/Ctrl+Cфайла в файл,

xsel -b > some.txt

Я помещаю содержимое буфера обмена в some.txtфайл.

Выполнено.

Скопировать содержимое файла / строку в буфер обмена

Вы можете пройти через этот ответ по Radu Rădeanu , который описал , как можно скопировать содержимое файла / строки из терминала в буфер обмена , который можно наклеить с помощью Ctrl+V


2
Напоминание: если у вас есть что-то очень важное в буфере обмена, не копируйте и не вставляйте текст из этого ответа, так как вы об этом пожалеете.
portforwardpodcast

@portforwardpodcast, пожалуйста, уточните, чтобы мы знали, что / как именно может вызвать проблему.
Souravc

3
Проблема возникает следующим образом: 1) Скопируйте что-нибудь очень длинное и важное в ваш буфер обмена. 2) Случайно закройте источник этих данных. 3) Неистово Google, как записать буфер обмена в файл. 4) Найти этот пост. 5) Скопировать пример текста. 6) Вы потеряли свой оригинальный важный текст
portforwardpodcast

14

Вы также можете использовать xclip(установить с помощью sudo apt-get install xclip) так:

xclip -selection clipboard -o > clipboard.txt

который поместит буфер обмена в clipboard.txtрабочую папку.


Для изображений , которые вы могли бы использовать что - то вроде: xclip -selection clipboard -t image/png -o > "`date +%Y-%m-%d_%T`.png".
Пабло Бьянки

2
xclip работал для меня с вставкой около 200k строк из журнала. xsel (принятый ответ) не
user985366

В то время как копирование в vim заняло много времени (не закончилось через 10 минут), у меня не было времени моргнуть, прежде xclipчем работа была выполнена. xselне работал
Скиппи ле Гран Гуру

1

Другим вариантом является то, gpasteчто вы можете получить несколько предыдущих копий буфера обмена.

Установите его

sudo apt-get install gpaste

И вы можете восстановить последнюю копию с

gpaste get 0 > file.txt

Обратите внимание, что вы можете изменить на 0любое число, чтобы получить другие копии.


после установки gpaste все равно не будет работать! Это отстой
Руссо

Теперь это "gpaste-client" в Ubuntu 18.04 ... cc @Russo
David
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.