6

Я пытаюсь выяснить, как скопировать содержимое файла в буфер обмена и из него в Linux (Ubuntu Server 11.10, bash). Есть ли в Linux эквивалент командного клипа Windows clip < filename? Если так, то, что это? Кроме того, на сервере нет графического интерфейса.

Я слышал о таких пакетах, как xsel и xclip , но я надеялся найти что-то, что не требует установки дополнительных пакетов. Если это невозможно, каковы преимущества и недостатки каждого из вышеуказанных пакетов? Есть ли другие пакеты с той же целью? Если так, каковы их преимущества и недостатки?

Заранее спасибо.

1 ответ1

10

Практически все в Linux имеет форму "дополнительных пакетов" - обычно это общие библиотеки, которые пишутся один раз и используются в сотнях программ, чтобы избежать ненужного дублирования. Вы не должны бояться их , если вы не на критически низком уровне дискового пространства.

Тем не менее, сам Linux не имеет "буфера обмена"; эта функция является частью графического интерфейса X11. И xsel и xclip требуют X11 для работы - он не обязательно должен быть на сервере (для которого нужны только libX11 и xauth, ничего более); если вы подключаетесь по SSH, X11 может быть запущен на вашем рабочем столе; но вам все еще нужен дисплей X11 где-то.

local$ ls | xsel -i
local$ ssh -Y myserver
myserver$ xsel -o > list.txt

(В этом примере ssh -Y включает X11-over-SSH, позволяя запускать программы X11 на сервере и подключать их к локальному дисплею X11. Различия между xsel и xclip очень минимальны, их основная функциональность одинакова.)

Если вы работаете за консолью, в текстовом формате, эти инструменты не будут работать. Вместо этого вам придется использовать что-то вроде gpm screen или tmux - gpm работает, добавляя поддержку мыши в tty, тогда как screen и tmux являются "терминальными мультиплексорами", которые имеют только буфер обмена в качестве вторичной функции (но тем не менее полезны, позволяя черепица нескольких терминалов в одном тты).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .