Коли ви натискаєте Ctrl-C над файлом у файловому менеджері, його вміст НЕ копіюється в буфер обміну. Простий тест: виберіть файл у файловому менеджері, натисніть Ctrl-C, відкрийте текстовий редактор, натисніть Ctrl-V. Результат - не вміст файлу, а його повний шлях.
Насправді ситуація дещо складніша, оскільки ви не можете зробити протилежне - скопіюйте список імен файлів з текстового редактора та вставте їх у файловий менеджер.
Щоб скопіювати деякі дані з командного рядка в буфер обміну X11, ви можете використовувати xclip
команду, яку можна встановити
sudo apt-get install xclip
копіювати вміст файлу або виводити якусь команду до буфера обміну
cat ./myfile.txt|xclip -i
текст можна потім вставити кудись за допомогою середньої кнопки миші (це називається "буфер первинного вибору").
Якщо ви хочете скопіювати дані у вибір "буфер обміну", щоб їх можна було вставити у програму із Ctrl-V, ви можете зробити
cat ./myfile.txt|xclip -i -selection clipboard
Щоб мати змогу копіювати файли з командного рядка та вставляти їх у файловий менеджер, потрібно вказати правильний "ціль атома", щоб менеджер файлів розпізнавав дані у буфері обміну, а також надав дані у правильному форматі - на щастя, у випадку копіювання файлів у файловому менеджері - це лише список абсолютних імен файлів, кожен у новому рядку, те, що легко створити за допомогою find
команди:
find ${PWD} -name "*.pdf"| xclip -i -selection clipboard -t text/uri-list
(принаймні, це працює для мене в KDE). Тепер ви можете обернути в невеликий скрипт , який можна назвати, скажімо, cb
:
#!/bin/sh
xclip -i -selection clipboard -t text/uri-list
потім ви помістите його ~/bin
, встановіть на нього виконуваний біт і використовуйте його так:
find ${PWD} -name "*.txt"| cb
Приємно, чи не так?