Ich benutze die Funktionen ausgiebig, um in meinem Terminal durch den Befehlsverlauf zu navigieren. Ich frage mich, ob es eine Möglichkeit gibt, auch im Befehlsausgabeverlauf zu navigieren. (neben einem großen Histize und stützte sich auf die Pgup-Taste)
Ich kann den Befehl nicht einfach erneut ausführen, da sich in meiner speziellen Situation die Quelle der Befehle ändert. Ich muss häufig auf die Ergebnisse einer früheren Änderung zurückblicken.
Hacks willkommen.
Vielen Dank!
Edit 2010:
Ich habe "tee" die Gutschrift gegeben; Unter all den Methoden, um Ihre Sitzung an einem anderen Ort zu protokollieren, ist sie die am weitesten verbreitete (dh sie ist Teil von gnu coreutils und erfordert keine bestimmte Shell oder ein bestimmtes Dienstprogramm, um zu funktionieren). Es war nicht wirklich das, wonach ich gesucht habe, aber mir ist klar, dass so etwas nicht wirklich existiert.
Die screen
beste Annäherung, die ich mir vorstellen kann, ist die Verwendung von (byobu / tmux), das in eine Datei protokolliert und einen benutzerdefinierten Befehl zum Blättern / Durchsuchen dieser Protokolldatei schreibt (und mit der Tastenkombination verknüpft less
). Vielen Dank an alle.
Edit 2012:
@Dustin Kirklands Antwort ist eindeutig die beste, zumindest im Allgemeinen. Der Scrollback-Puffer des Terminals ist die am wenigsten aufdringliche Methode zum Navigieren im Befehlsausgabeverlauf. In Byobu wird anscheinend eine große Standardanzahl von Verlaufszeilen gespeichert (10 KB; tmux hat 2 KB, GNU-Bildschirm 100), und es werden Regex-Suchvorgänge ermöglicht (ein kurzer Blick zeigt an, dass der GNU-Bildschirm keine Scrollback-Suche und tmux nur eine Klartext-Suche enthält).
exit
, schließen Sie das Terminal, öffnen Sie ein neues Terminal mit Byobu und behalten Sie die vorherige Sitzung bei.Mit können Sie
tee
Ihre Befehlsausgabe gleichzeitig an eine Datei und an das Terminal senden.quelle
Mit können Sie
script
Ihre Terminalsitzung in einer Datei protokollieren. Wenn dies immer passieren soll, fügen Siescript
Ihrem Befehl einen passenden hinzu.login
.$ man script
quelle
verwenden
screen -L
Nach dem Beenden der Shell-Sitzung (
exit
Befehl) erhalten Sie eine Protokolldatei in demselben Verzeichnis, das Sie gestartet habenscreen
dann können Sie die Ausgabe mit
more
oder anzeigenless -R
quelle
screen
kann so eingestellt werden, dass die Ausgabe protokolliert wird.Ein Weg , um es zu starten, innerhalb einer laufenden
screen
Sitzung ist zu drücken Ctrl- aund dann :, dann eingebenlog
.Von
man screen
:quelle
bash speichert zwar den Verlauf Ihrer Aktionen, nicht jedoch die Ausgabe der Befehle. Es könnte möglicherweise sehr groß sein und ist häufig nicht nützlich.
quelle