Как выбрать (скопировать) вывод в терминал без мышки

10

Кажется, что это типичный способ, которым у вас есть какой-то вывод в терминале, и если вы хотите выбрать определенную фразу, вы используете мышь для ее копирования, но есть ли способ выбрать без использования мыши? Например, я ввожу lsи получаю список файлов и хочу выбрать второй файл (второй ряд), есть ли способ скопировать имя без использования мыши?

негритос
источник

Ответы:

10

Используя tmux:

Я использую tmuxв режиме VI:

  1. Перейти в режим копирования (в моей конфигурации Prefix+ escape, префикс по умолчанию Ctrl+ b)
    • В конфигурационном файле ( ~/.tmux.conf):bind Escape copy-mode
  2. Передвигаться (используя стрелки)
  3. Выберите желаемый результат (Начните с выбора Space)
    • В моем конфиге v:bind-key -T copy-mode-vi y send-keys -X begin-selection
  4. Нажмите, Enterчтобы скопировать текст.
    • В моем конфиге y:bind-key -T copy-mode-vi y send-keys -X copy-selection
  5. Нажмите Prefix+, pчтобы вставить.

введите описание изображения здесь

Также создайте привязку ключей следующим образом:

bind C-c run "tmux save-buffer - | xsel -bi"

Таким образом, вы можете сохранить буфер в системный буфер обмена, нажав Prefix+ Ctrl+ c.

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


Используя команды:

Вот что я делаю:

  1. Выполните команду (например: ls -1)
  2. Обработайте вывод, чтобы получить желаемый результат
  3. Пип это xsel -bi

В вашем примере:

$ ls -1 | sed -n 2p | xsel -bi
  • ls -1 выводит выходные данные каждый в одну строку
  • sed -n 2p получить вторую строку
  • xsel был использован для копирования окончательного результата в буфер обмена.

Если выполнение команды занимает слишком много времени, сначала сохраните выходные данные в файл и обработайте выходные данные:

command > output
head -10 output | whatever | xsel -bi
Ravexina
источник
0

Наиболее распространенные эмуляторы терминалов Linux не могут сделать это напрямую. Хотя есть 2 из них, о которых я знаю.

Тот, который существует в течение достаточно долгого времени, является Термитом. Это довольно спартанский, хотя (сочетания клавиш не настраиваются, нет нескольких вкладок).

Теперь есть второй, который имеет эти функции под названием Mantid (который я безбожно рекламирую здесь :)):

https://github.com/omgold/mantid-term

Тем не менее, пока нет сборки Ubuntu, кроме одного Arch и RPM. Вы можете попытаться создать RPM и преобразовать в deb, используя Alien.

omgold
источник
Я хотел бы попробовать mantid, но я не могу найти учебник или руководство. Есть ли там какая-либо документация? Было бы неплохо хотя бы узнать, как он выполняет функциональность, запрашиваемую в этом вопросе.
Луис де Соуза
Существует man-страница ('man mantid') и примеры файлов конфигурации в / usr / share / mantid. Man-страница в основном описывает параметры конфигурации, а активные сочетания клавиш можно найти в файле конфигурации.
omgold