GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Alle Tmux-Scrollbacks in eine Datei schreiben?

Wie kann ich den gesamten Scrollback in einer tmux-Sitzung in eine Datei schreiben?

capture-panel kann den aktuellen Bildschirm erfassen, aber nicht den gesamten Scrollback.

Akzeptierte Antwort:

Dies hängt vom Wert von history-limit ab die Sie in Ihrer .tmux.conf eingestellt haben – der Standardwert ist 2000; Wenn Sie mehr erfassen möchten, müssen Sie die Anzahl der Zeilen explizit festlegen.

Um das gesamte Scrollback zu erfassen, wechseln Sie in den Kopiermodus, wählen Sie das gesamte Scrollback aus, ziehen Sie es in den Puffer und fügen Sie es dann in Ihre Datei ein.

Wie Sie dies bewerkstelligen, hängt von den mode-keys ab Option, die Sie bevorzugen, vi oder emacs. man tmux hat eine hilfreiche Tabelle, die die jeweiligen Tasten beschreibt.

Ich habe folgendes in meiner .tmux.conf zur Vereinfachung:

unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection

Der Prozess zum Erfassen des vollständigen Scrollbacks ist dann:

Präfix Esc :Um in den Kopiermodus zu wechseln

v :um mit der visuellen Auswahl zu beginnen (vorausgesetzt, Sie befinden sich bereits am unteren Rand des Bildschirms)

g g :um alles im Scrollback festzuhalten

y :um es in den Puffer zu ziehen

Präfix c :Öffne ein weiteres tmux-Fenster

vim scrollback.txt

ich :Wechseln Sie in den Einfügemodus in vim

Präfix p :in Datei einfügen

Es gibt hier auch eine Antwort, die beschreibt, wie man den Puffer mit xsel in eine temporäre Datei kopiert das könnte nützlich sein.


Linux
  1. Durchführen von atomaren Schreibvorgängen in einer Datei in Bash?

  2. Wie schreibe ich eine Datei in eine andere?

  3. Alle Dateien bis zum Match anzeigen?

  4. Bereits laufenden Prozess daran hindern, in eine vorhandene Datei zu schreiben?

  5. Dateiberechtigungen unter Linux – Lesen/Schreiben/Ausführen

Bash:In Datei schreiben

So löschen Sie alle Zeilen einer Datei in Vim

Leiten Sie die gesamte Ausgabe in eine Datei in Bash um

Konvertieren Sie alle Dateierweiterungen in Kleinbuchstaben

file_put_contents erstellt keine txt-Datei

Unrar alle Dateien im Verzeichnis ohne Aufforderung