Как сохранить историю прокрутки в byobu?

У меня была интересная сессия терминала в byobu, и я хотел бы сохранить вывод терминала (команды и все) в файл - как я могу это сделать?

Согласно byobu :

Ctrl-a ~ - Сохранить буфер прокрутки текущего окна

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

1
задан 27 November 2013 в 10:32

6 ответов

Старый вопрос все еще не ответил на работоспособность, и я снова нуждаюсь в этом.

На этот раз я нашел работоспособное решение. Из man byobu:

SCROLLBACK, COPY, PASTE MODES

   Each  window  in  Byobu  has  up to 10,000 lines of scrollback history,
   which you can enter and navigate using the alt-pgup and alt-pgdn  keys.
   Exit  this  scrollback mode by hitting enter.  You can also easily copy
   and paste text from scrollback mode.  To do so, enter scrollback  using
   alt-pgup  or  alt-pgdn,  press the spacebar to start highlighting text,
   use up/down/left/right/pgup/pgdn to select the text, and press enter to
   copy  the  text.  You can then paste the text using alt-insert or ctrl-
   a-].
Я попал в F7, чтобы перейти в режим прокрутки, Пробел, чтобы начать выбор, gg, чтобы прокрутить до вершины буфера (спасибо @GeorgeMarian). Если это не работает, попробуйте это: либо с большим количеством страниц вверх или: за ним следует самый большой номер строки (вверху справа) и страница вверх, чтобы попасть в верхнюю часть этой страницы, введите для копирования (в буфер обмена byobu, а не в терминале / систему), затем cat > my-byobu-dump.txt в терминале, Alt + Insert или ctrl + A +], чтобы вставить (опять же из буфера обмена byobu) Ctrl + D, чтобы закрыть файл.
12
ответ дан 24 May 2018 в 14:49

Если вы не используете F-ключи, это может сработать для вас:

Ctrl + a, [: введите режим прокрутки Коснитесь введите режим копирования (необязательно) Введите выход из режим прокрутки или копирования Ctrl + a,]: вставить скопированный файл
2
ответ дан 24 May 2018 в 14:49
  • 1
    Также, если ваша терминальная программа перехватывает F-ключи;) – drevicko 31 July 2017 в 13:25

Shift + F7 работает только так, как ожидается, если у вас есть переменная окружения EDITOR, установленная в редактор в byobu. По некоторым причинам, в некоторых случаях (например, для подключения через SSH к другому компьютеру) установка этой переменной в ~/.profile недостаточна. Одно место, чтобы установить его так, чтобы byobu всегда читал, что он находится в ~/.bashrc. Скопируйте на свое ~/.bashrc следующее:

# Although this is set in ~/.profile, it is set here as well so that in a 
# remote byobu session, Shift+F7 copies the output to a Vim buffer. See:
# https://askubuntu.com/questions/382750/how-to-save-scrollback-history-in-byobu
export EDITOR='vim'
2
ответ дан 24 May 2018 в 14:49
  • 1
    В моем случае это не помогло (на самом деле .bashrc - это то место, где я устанавливал EDITOR). Насколько я могу судить, мой эмулятор терминала (программа терминалов по умолчанию osx) не правильно передает функциональные клавиши - возможно, разрешима в настройках терминала, но решения ctrl-A работают для меня. – drevicko 23 August 2017 в 12:59
  • 2
    @drevicko ах, я вижу, хорошо знать. Хорошо, хорошо, что мы собираем несколько обходных решений, так что, надеюсь, один из них будет работать для следующего человека, который сталкивается с этой проблемой. – scottkosty 24 August 2017 в 01:18
  • 3
    fyi: .profile не загружается для сеансов ssh по умолчанию - объясняет, что произошло здесь. – drevicko 24 August 2017 в 13:48
  • 4
    @drevicko Это объясняет это. Благодаря! – scottkosty 24 August 2017 в 21:03

Выберите текст, который вы хотите сохранить, затем нажмите Control + Shift + C Далее, откройте свой любимый текстовый редактор. Затем вставьте содержимое здесь с помощью Control + V. Наконец, сохраните файл в нужном месте.

TERMINAL TIP OF THE DAY: При попытке скопировать что-то в терминал, как обычно, используйте Control + Shift + Shift вместо Control + C и вставьте как обычно. Для вставки чего-то, что находится в буфер обмена в терминал, используйте Control + Control + V.

1
ответ дан 24 May 2018 в 14:49
  • 1
    его просто простая схема копирования пасты, будет тратить время на копирование, а затем вставить. drevicko хочет сделать это через терминал или автоматически сохраняет его где-то. – Sukupa91 27 November 2013 в 09:13
  • 2
    Разве он не сказал, что хотел бы сохранить все в файл? Это как он это делает. – Cammy_the_block 27 November 2013 в 09:17
  • 3
    Нет, я считаю, что вы просто получите на экране стоимость - не всю (возможно, 10000 строк) byobu scrollback history ... Обратите внимание, что byobu хранит историю терминала, которая не зависит от используемого вами приложения терминала. – drevicko 27 November 2013 в 09:18
  • 4
    Если вы удерживаете мышь над окном, она будет прокручиваться вверх, чтобы вы могли выделить все. – Cammy_the_block 27 November 2013 в 09:20
  • 5
    @Cammy_the_block вам не хватает " byobu " бит, посмотрите его (ОЧЕНЬ удобная вещь, если вы работаете на удаленных серверах). В нем хранятся сеансы терминала, с которыми вы можете отключиться, а затем снова подключиться. У меня есть 10 000 строк истории терминалов, которые НЕ доступны для локального терминала. Byobu (и бэкэнд использует: tmux или screen) имеют свой собственный набор команд с клавиатурой для доступа к этой истории. – drevicko 27 November 2013 в 10:11

Используйте Ctrl + A + ~, чтобы скопировать буфер прокрутки в буфер обмена byobu.

Вставить текст в редактор, используя Ctrl + insert или A [!d2 ] + A + ~ .

(Отрегулируйте вставить + A, если вы изменили свой escape-ключ.)

1
ответ дан 24 May 2018 в 14:49
  • 1
    У меня есть только Mac для работы в данный момент, а ctrl-a ~ then ctrl-a] ничего не делают - я подозреваю, что ctrl-a не делает это byobu (который находится на другом конце ssh tunnel). Любые идеи? – drevicko 31 July 2014 в 18:15

Ctrl + A +] будет работать, если вы набираете от 1 до 20 раз или больше с помощью абракодабры. Но единственная команда будет работать без головной боли. Чтобы вставить текст из буфера в терминал или файл. И победитель Alt + Ins., Поздоровайтесь с Byobu - это программное обеспечение GPLv3, автором и поддерживаемым Дастином Киркландом.

0
ответ дан 24 May 2018 в 14:49

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

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