Где хранится содержимое буфера обмена?


10

Поскольку они «сохраняются в буфер обмена», содержимое должно храниться где-то.

Они хранятся в файле?


Насколько я знаю, файла как такового нет. X-сервер хранит содержимое внутри. Есть некоторые приложения, которые могут скопировать стандартный ввод терминала в буфер обмена (это на самом деле называется выделением на X-сервере). Я собираюсь скачать код Sorce, я дам вам знать, что я могу найти
Сергей Колодяжный

Ответы:


12

Кажется, вам не хватает понимания буфера обмена в Linux. Есть 3, обычно доступные для пользователей.

Эти буфера обмена называются «Выборы»

Есть:

  • PRIMARY - обычно используется для средней кнопки мыши = копировать / вставить
  • ВТОРИЧНЫЙ - Обычно не используется многими, но он существует. Обычно в приложении для копирования и вставки.
  • CLIPBOARD - Обычно Ctrl+ cи Ctrl+ vстиль копирования и вставки.

Все они по умолчанию хранятся в памяти управляющего приложения (обычно Xorg, но не всегда). И каждое дочернее приложение имеет к нему доступ.

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


4

Какой буфер обмена? Есть некоторые приложения / инструменты, которые можно использовать для хранения содержимого буфера обмена в файле на диске, но функция основного буфера обмена в X11 просто сохраняет то, что находится в буфере обмена, в памяти. Он не хранится в файле на диске.


Есть идеи, что это за адрес?
TellMeWhy

@DevRobot, что вы будете делать с адресом?
Муру

@DevRobot Это не статичная вещь, так что нет. Не уверен, почему это важно.
Добей

@muru просто интересно ...
TellMeWhy

2
Вы не можете получить доступ к этому адресу, и он всегда меняется. Доступ к буферу обмена по адресу памяти не будет работать. Во всяком случае, не законно. См github.com/ThomasHabets/clipsniff
coteyr
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.