Скажем, я набрал следующую длинную команду в командной строке
$ some very long command that I want to copy to the clipboard
Как я могу эффективно вывести это в системный буфер обмена? Я использую Gnome Terminal 2.23.1.
Я знаю, что могу взять мышь, выделить ее и скопировать, но я хочу общее решение для клавиатуры.
Было бы также хорошо, если бы оно распространялось на несколько программ командной строки.
Например, в bash в режиме vi я могу нажать v
, а затем отредактировать команду в vim и, таким образом, использовать функцию копирования Vim в буфер обмена, но это не работает при использовании R в командной строке. Это также немного медленно.
Мне бы хотелось, чтобы в режиме vi я мог нажать yy
и скопировать содержимое строки в системный буфер обмена, но, похоже, это не работает. Кроме того, кажется, что любые команды восстановления не копируют содержимое в системный буфер обмена; они, кажется, копируют только в буфер, используемый bash.
После публикации я нашел
Так завершения я имею смочь добраться, при помощи истории и xclip в соединении, делающем это
echo !! | xclip
Это поставит последнюю команду буфер обмена центральной кнопки. Я все еще ищу что-то лучше хотя, поскольку я хотел бы свалить его к одной команде. Однако я зависаюсь, потому что история не функционирует в сценариях оболочки, и я не знаю, что существует способ использовать !!
правильно в псевдониме. Конечно, это, кажется, не вполне, что Ваша просьба о моем намерении должна использовать это для того, чтобы сделать заметки того, что я делаю. Какие-либо мысли?
Вы также можете использовать менеджер буфера обмена, как parcellite
. Это менеджер буфера обмена GTK +, который также имеет возможности буфера обмена из командной строки
Вы можете использовать его из командной строки:
echo "some very long command that I want to copy to the clipboard" | parcellite
##or##
parcellite "some very long command that I want to copy to the clipboard"
Он не установлен по умолчанию, и вам придется установить parcellite по sudo apt-get install parcellite
Вы можете использовать Ctrl kbd> + Shift kbd> + C kbd> для копирования и Ctrl kbd> + Shift kbd> + V kbd> для вставки в любом месте терминала.