Как я копирую текст с программы “экран” к моему буферу обмена?

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

Как я делаю это?Спасибо!

11
задан 10 August 2011 в 04:56

3 ответа

В большинстве программ Вы выбрали бы текст и нажали бы Ctrl + C для копирования его. Вставка текста была бы сделана путем нажатия Ctrl + V. В программе эмулятора терминала Ctrl + C имеет особое значение, он прерывает (останавливает) программы по умолчанию.

Вашей программе эмулятора терминала можно было определить другие ярлыки. Например, Konsole и Gnome Terminal используют Ctrl + Сдвиг + C для копирования выделенного текста. С другой стороны, выберите текст и скопируйте его при помощи опции Copy в меню Edit или контекстном меню.

Если производство Вашей программы является крупносерийным, Вы могли бы хотеть включить scrollback буфер screen. Это может быть сделано путем добавления ниже строки к ~/.screenrc файл:

termcapinfo xterm ti@:te@
7
ответ дан 23 November 2019 в 04:00

Для необработанной и грязной реализации установите пакет xsel, это позволяет взаимодействие командной строки с затем X буферами обмена, затем вставило эти строки Ваш ~/.screenrc

bind > eval writebuf "exec sh -c 'xsel -nbi </tmp/screen-exchange'"
bind y eval "exec sh -c 'xsel -bo >/tmp/screen-exchange'"

затем перезапуск screen.

Теперь, когда Вы выбираете что-то в screen режим copy/scrollback и буфер записи в файл с C-a>, можно переместиться в браузер и вставить содержание буфера обмена, как обычно (например, с Ctrl-V).

Для реверса скопируйте что-то в своем браузере с Ctrl-C, затем перейдите в screen и считайте буфер обмена с новой командой C-a y, затем считайте обменный экраном файл в буфер с C-a <наконец вставьте везде, где Вы хотите с C-a].

Чтобы это работало переменная DISPLAY должен быть правильно установлен, и у Вас должен быть доступ к X-серверу. Это не проблема, когда Вы находитесь на терминале, работающем на том же X-сервере, но если Вы работаете screen в виртуальном терминале, например, tty1, затем Вы, возможно, должны работать xhost + на X сторонах, и export DISPLAY=:0 или подобный на терминале, перед запуском screen.

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

Этот ответ частично вдохновлен синхронизирующимся буфером экрана GNU и X выборами

10
ответ дан 23 November 2019 в 04:00

Просто используйте операцию копии в своем терминальном приложении. Если Вы используете терминал гнома, например, просто избранный тест и используете контекстное меню-> копия.

0
ответ дан 23 November 2019 в 04:00

Другие вопросы по тегам:

Похожие вопросы: