.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1980, 1990 Regents of the University of California. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)script.1 6.5 (Berkeley) 7/27/91 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH SCRIPT 1 "Oktober 2019" util\-linux "Dienstprogramme für Benutzer" .SH BEZEICHNUNG script \- Eingabeskript einer Terminalsitzung anlegen .SH ÜBERSICHT \fBscript\fP [Optionen] [\fIDatei\fP] .SH BESCHREIBUNG \fBscript\fP erstellt ein Eingabeskript Ihrer gesamten Terminalsitzung. Die Terminal\-Rohdaten werden in einer Protokolldatei und Timing\-Informationen (optional) in einer weiteren, strukturierten Datei gespeichert. Die Timing\-Protokolldatei ist zur späteren Wiedergabe der Sitzung mit \fBscriptreplay\fP(1) und zum Speichern zusätzlicher Informationen zur Sitzung notwendig. .PP Seit Version 2.35 unterstützt \fBscript\fP mehrere Datenströme und ermöglicht die Protokollierung der Ein\- und Ausgaben entweder in separate Dateien oder in eine Datei. Diese Version unterstützt auch die neue Timing\-Datei, welche zusätzliche Informationen aufzeichnet. Der Befehl \fBscriptreplay \-\-summary\fP stellt dann alle Informationen bereit. .PP Falls das Argument \fIDatei\fP oder die Option \fB\-\-log\-out\fP \fIDatei\fP angegeben ist, speichert \fBscript\fP den Dialog in dieser \fIDatei\fP. Falls kein Dateiname angegeben ist, wird der Dialog in der Datei \fItypescript\fP gespeichert. .PP Beachten Sie, dass die Protokolleingaben mit \fB\-\-log\-in\fP oder \fB\-\-log\-io\fP sicherheitskritisch sein können, da die Protokolldatei sämtliche Eingaben der Terminalsitzung beinhaltet (auch Passwörter), unabhängig davon, wie der Echo\-Schalter des Terminals gesetzt ist. .SH OPTIONEN Nachfolgend kann dem Argument \fIGröße\fP eines der multiplikativen Suffixe KiB (=1024), MiB (=1024*1024) und so weiter für GiB, TiB, PiB, EiB, ZiB und YiB folgen (das »iB« ist optional, zum Beispiel ist »K« gleichbedeutend mit »KiB«) oder die Suffixe KB (=1000), MB (=1000*1000) und so weiter für GB, TB, PB, EB, ZB und YB folgen. .TP \fB\-a\fP, \fB\-\-append\fP hängt die Ausgabe an \fIDatei\fP oder \fItypescript\fP an, wobei der vorherige Inhalt erhalten bleibt. .TP \fB\-c\fP, \fB\-\-command\fP \fIBefehl\fP führt den \fIBefehl\fP anstelle einer interaktiven Shell aus. Das erleichtert es einem Skript, die Ausgabe eines Programms aufzuzeichnen, das sich anders verhält, wenn die Standardausgabe kein TTY ist. .TP \fB\-E\fP, \fB\-\-echo\fP \fIWANN\fP steuert den ECHO\-Schalter des Pseudoterminals innerhalb der Sitzung. Unterstützte Modi sind \fIalways\fP (immer), \fInever\fP (nie) oder \fIauto\fP (automatisch). Die Voreinstellung ist \fIauto\fP – in diesem Fall wird ECHO deaktiviert, falls die aktuelle Standardeingabe ein Terminal ist, um ein Doppel\-Echo zu vermeiden, beziehungsweise aktiviert, falls die Standardeingabe kein Terminal ist (zum Beispiel eine Pipe: \fBecho date | script\fP), um fehlende Eingaben im Sitzungsprotokoll zu vermeiden. .TP \fB\-e\fP, \fB\-\-return\fP gibt den Exit\-Status des Kindprozesses zurück. Dafür wird das gleiche Format wie bei der Beendigung der Bash benutzt, bei der der Exit\-Status 128 + die Signalnunmmer ist. Der Exit\-Status des Kindprozesses wird auch immer in der Eingabeskript\-Datei gespeichert. .TP \fB\-f\fP, \fB\-\-flush\fP aktualisiert die Ausgabe nach jedem Schreibvorgang. Dies ist für die Fernzusammenarbeit hilfreich: Eine Person schreibt »mkfifo foo; script \-f foo« und eine andere kann mit »cat foo« in Echtzeit beaufsichtigen, was geschieht. Beachten Sie, dass sich die Aktualisierung auf die Performance auswirkt. Es ist möglich, bei Bedarf Protokolle mit SIGUSR1 zu aktualisieren. .TP \fB\-\-force\fP ermöglicht, dass die standardmäßige Ausgabedatei, also die \fIEingabeskript\fP\-Datei, ein harter oder symbolischer Link sein kann. Der Befehl wird einem symbolischen Link folgen. .TP \fB\-B\fP, \fB\-\-log\-io\fP \fIDatei\fP protokolliert Ein\- und Ausgabe in die gleiche \fIDatei\fP. Beachten Sie, dass diese Option nur Sinn ergibt, wenn auch \fB\-\-log\-timing\fP angegeben wird. Anderenfalls ist es unmöglich, Ein\- und Ausgabedatenströme für die Protokollierung in die \fIDatei\fP zu trennen. .TP \fB\-I\fP, \fB\-\-log\-in\fP \fIDatei\fP protokolliert die Eingabe in die angegebene \fIDatei\fP. Die Protokollausgabe ist deaktiviert, falls nur \fB\-\-log\-in\fP angegeben ist. .sp Verwenden Sie diese Protokollierungsfunktionalität mit Vorsicht, da sie alle Eingaben protokolliert, auch jene eines Terminals, bei denen der Echo\-Schalter deaktiviert ist (zum Beispiel Passworteingaben). .TP \fB\-O\fP, \fB\-\-log\-out\fP \fIDatei\fP protokolliert die Ausgabe in die angegebene \fIDatei\fP. Standardmäßig wird die Ausgabe in eine Datei namens \fItypescript\fP protokolliert, falls die Option \fB\-\-log\-out\fP oder \fB\-\-log\-in\fP nicht angegeben ist. Falls nur \fB\-\-log\-in\fP angegeben ist, wird die Protokollierung der Ausgabe deaktiviert. .TP \fB\-T\fP, \fB\-\-log\-timing\fP \fIDatei\fP protokolliert die Timing\-Informationen in die angegebene \fIDatei\fP. Derzeit werden zwei Formate der Timing\-Datei unterstützt. Das klassische Format wird verwendet, wenn die Protokollierung nur eines Datenstroms (Eingabe oder Ausgabe) aktiviert ist. Das Multi\-Datenstrom\-Format wird verwendet, wenn \fB\-\-log\-io\fP angegeben ist oder \fB\-\-log\-in\fP und \fB\-\-log\-out\fP zusammen angegeben sind. Siehe auch \fB\-\-logging\-format\fP. .TP \fB\-m\fP, \fB\-\-logging\-format\fP \fIFormat\fP erzwingt die Verwendung des \fIerweiterten\fP oder \fIklassischen\fP Formats. Die Voreinstellung ist das klassische Format, wenn nur die Ausgabe protokolliert wird, beziehungsweise das erweiterte Format, wenn die Protokollierung sowohl der Eingabe als auch der Ausgabe angefordert werden. .sp .RS \fBKlassisches Format\fP .PP Diese Daten enthalten zwei Felder, die durch Leerraum getrennt sind. Das erste Feld gibt an, wie viel Zeit seit der vorigen Ausgabe vergangen ist. Das zweite Feld gibt die Anzahl der in dieser Zeit ausgegebenen Zeichen an. .sp \fBErweitertes (Multi\-Datenstrom\-) Format\fP .PP Das erste Feld ist ein Bezeichner für den Typ des Eintrags: I (Eingabe), O (Ausgabe), H (Header/Kopfzeilen), S (Signal). Das zweite Feld gibt an, wie viel Zeit seit dem vorigen Eintrag vergangen ist, und der Rest besteht aus typspezifischen Daten. .RE .TP \fB\-o\fP, \fB\-\-output\-limit\fP \fIGröße\fP begrenzt die \fIGröße\fP der Eingabeskript\- und Zeitmessungsdateien auf den angegebenen Wert und stoppt den Kindprozess, nachdem diese Größe überschritten wurde. In die Berechnung der Dateigröße werden die Start\- und Ende\-Meldungen nicht einbezogen, die der Befehl \fBscript\fP der Ausgabe des Kindprozesses voranstellt bzw. anhängt. Wegen der Pufferung kann die Ausgabedatei größer als der angegebene Wert sein. .TP \fB\-q\fP, \fB\-\-quiet\fP unterdrückt Meldungen (die Meldungen zu Beginn und Ende werden nicht in die Standardausgabe geschrieben). .TP \fB\-t\fP[\fIDatei\fP], \fB\-\-timing\fP[=\fIDatei\fP] schreibt die Timing\-Daten in die Standardfehlerausgabe oder in die optional angegebene \fIDatei\fP. Diese Option ist veraltet. Sie sollten stattdessen \fB\-\-log\-timing\fP verwenden, wobei das Argument \fIDatei\fP verpflichtend ist. .TP \fB\-V\fP, \fB\-\-version\fP zeigt Versionsinformationen an und beendet das Programm. .TP \fB\-h\fP, \fB\-\-help\fP zeigt einen Hilfetext an und beendet das Programm. .SH SIGNALE Nach dem Empfang des Signals \fBSIGUSR1\fP aktualisiert \fBscript\fP sofort die Ausgabedateien. .SH UMGEBUNGSVARIABLEN Die folgende Umgebungsvariable wird von \fBscript\fP verwendet: .TP \fBSHELL\fP Falls die Variable \fBSHELL\fP existiert, dann wird die von \fBscript\fP geforkte Shell diese Shell sein. Falls \fBSHELL\fP nicht gesetzt ist, wird die Bourne\-Shell angenommen (die meisten Shells setzen diese Variable automatisch). .SH ANMERKUNGEN Das Skript endet, wenn die mit \fBfork\fP gestartete Shell beendet wird (ein \fIStrg\-D\fP für die Bourne\-Shell (\fBsh\fP(1p)) und \fIexit\fP, \fIlogout\fP oder \fIStrg\-d\fP (falls \fIignoreeof\fP nicht gesetzt ist) für die C\-Shell, \fBcsh\fP(1)). .PP Bestimmte interaktive Befehle, wie \fBvi\fP(1), erzeugen Datenmüll in der Eingabeskript\-Datei. Der Befehl \fBscript\fP funktioniert mit Befehlen am besten, die den Bildschirm nicht manipulieren, die Ergebnisse sollen ein Hardcopy\-Terminal nachahmen. .PP Es wird nicht empfohlen, \fBscript\fP in nicht\-interaktiven Shells auszuführen. Die innere Shell von \fBscript\fP ist immer interaktiv, was zu unerwarteten Ergebnissen führen könnte. Falls Sie \fBscript\fP in der Shell\-Initialisierungsdatei verwenden, müssen Sie verhindern, dass es eine Endlosschleife durchläuft. Sie können beispielsweise die Datei \fB\%.profile\fP verwenden, die nur von Anmelde\-Shells gelesen wird: .sp .na .RS .nf if test \-t 0 ; then script exit fi .fi .RE .ad .PP Sie sollten es auch vermeiden, \fBscript\fP in Befehlsweiterleitungen (Pipes) zu verwenden, da \fBscript\fP mehr Eingaben lesen kann, als Sie erwarten würden. .SH GESCHICHTE Der Befehl \fBscript\fP erschien in 3.0BSD. .SH FEHLER \fBscript\fP schreibt \fIalles\fP in die Protokolldatei, auch Zeilenvorschübe und Rückschritte. Das ist nicht das, was der naive Benutzer erwartet. .PP \fBscript\fP wurde primär für interaktive Terminalsitzungen entworfen. Wenn die Standardeingabe kein Terminal ist (zum Beispiel: \fBecho foo | script\fP), dann könnte die Sitzung hängenbleiben, weil der interaktiven Shell innerhalb der \fBscript\fP\-Sitzung die Dateiende\-Markierung (EOF) fehlt und \fBscript\fP keinen Anhaltspunkt hat, wann es die Sitzung schließen soll. Im Abschnitt \fBANMERKUNGEN\fP finden Sie weitere Informationen. .SH "SIEHE AUCH" \fBcsh\fP(1) (für den \fIhistory\fP\-Mechanismus), \fBscriptreplay\fP(1), \fBscriptlive\fP(1) .SH VERFÜGBARKEIT Der Befehl \fBscript\fP ist Teil des Pakets util\-linux, welches aus dem .UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util\-linux/ Linux Kernel\-Archiv .UE heruntergeladen werden kann. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die .MT debian-l10n-german@\:lists.\:debian.\:org Mailingliste der Übersetzer .ME .