(c) sxc.hu

Shell-Sitzungen aufzeichnen mit script

4

Wer kennt das Problem nicht: History gelöscht oder in verschiedenen Terminals gearbeitet und weg sind die wichtigen Befehlsfolgen, die man sich eigentlich notieren wollte. Auch zu lange Ausgaben machen das Arbeiten in der Shell unbequem. Als Lösung bietet sich das Programm script an. Es zeichnet Shell-Sitzungen auf. Der Aufruf erfolgt über

script -a logdatei

Alles, was man von nun an eingibt landet inklusive Ausgabe in der Datei logdatei.script. Dabei handelt es sich um eine einfache Textdatei, die man mit einem Programm wie less oder jedem beliebigen Editor betrachten kann. Mit der Option -t lassen sich zudem die Timestamps sichern, um komplette Sessions über scriptreplay nachzuspielen.

Hinterlasse einen Kommentar

4 Kommentare auf "Shell-Sitzungen aufzeichnen mit script"

  E-Mail Benachrichtigung  
Neuste Älteste Beste Bewertung
Benachrichtige mich zu:

Ich versteh nicht nur ganz warum dann noch ein weiteres script laufen muss. Ich benutze zum herrauskramen älteren eingegebenen Befehlsfolgen die pfeiltasten. Sind die Eingaben schon sehr weit zurückgerückt, löst ein STRG+r das zahlreiche rauf und runter gedrücke ab. Mit Strg+r lässt sich recht bequem die History durchsuchen indem Sie ein oder mehrere schlagwörter eingeben.
Ein mehrfaches drücken von Strg+r blättert durch die suchergebnisse. Problematisch bleibt jedoch weiterhin die Geschichte mit der History wenn man mit mehreren Terminals arbeitet…ansonsten kann ich noch das arbeiten mit guake empfelen…

In der History hast du nur die Befehle gespeichert, aber nicht die Ausgabe. Du siehst dann zwar, dass du den Befehl „ls -l datei.txt“ aufgerufen hast, kannst aber nicht mehr rekonstruieren, was die Ausgabe des Befehls war. Script schreibt das ebenfalls mit.

ermöglicht script das schreiben aus verschiedenen terminals in eine log datei? genau das macht history soweit ich es bis jetzt mitbekommen habe nämlich nicht.
sinnvoll wäre auch, wenn der username mit geschrieben wird. so kann script prima in der globalen bashrc abgelegt werden und so das gesamte system loggen – böse buben werden auch noch beobachtet in ihrem schaffen

Weil ich gerade darüber gestolpert bin. In der neuen Bash 4.1 gibt es die Möglichkeit, die History an den Syslog weiterzureichen. Dazu muss man allerdings in der Datei config-top.h die entsprechende Option aktivieren:

http://tiswww.case.edu/php/chet/bash/FAQ