Kommandozeilen-Programm logtext  
 

Navigation: This page in English - Hauptseite - Inhalt


Programm oder Batch-Datei herunterladen Betriebssystem Beschreibung
LogTextSetup.exe
LogText.zip

Version vom 2006-11-03

Windows
(95/98/ME/
NT/2000/XP)
Logtext ist ein kleines Hilfsprogramm für die Kommandozeile, um Textzeilen als Protokollfunktion in eine Datei zu schreiben (Neudeutsch: Logdatei). Jeder Zeile wird Datum und Uhrzeit im Format ISO8601 vorangestellt, wobei auch der Zeitzonen-Offset nicht unberücksichtigt bleibt, und das Ganze in die angegebene Datei geschrieben. Abhängig von den Aufrufparametern hängt das Programm die aktuelle Jahreszahl (yyyy), das aktuelle Monat (yyyy-mm), die aktuelle Kalenderwoche (yyyy-Www) oder den aktuellen Tag (yyyy-mm-dd) an den Protokolldateinamen an. Alte Dateien werden automatisch bearbeitet, d.h. entweder gelöscht oder gepackt (mit der gzip-Bibliothek komprimiert). Zusätzlich kann für eine Protokolldatei auch eine Maximalgröße oder eine maximale Anzahl von Zeilen bestimmt werden.
Logtext kann auch von der Standardeingabe lesen, d.h. die Ausgabe von Konsolenprogrammen und Batch-Dateien erfassen.
 

Beispiele:

logtext batchname "Text zum Mitprotokollieren." ECHO DAILY

Dieses Beispiel fügt der Datei im aktuellen Verzeichnis mit dem Namen "batchnameyyyy-mm-dd.log" eine Textzeile hinzu. Der Inhalt der Zeile ist "yyyy-mm-dd +/-zeitzone Text zum Mitprotokollieren.", wobei yyyy für die aktuelle Jahreszahl steht, mm für das Monat, dd für den aktuellen Tag des Monats und zeitzone 4-stellig die Zeitverschiebung zu UTC (Coordinated Universal Time; ehemals Greenwich Mean Time, GMT) im ISO-Format bezeichnet. Der Parameter ECHO bestimmt, daß der Text auch zur Standardausgabe geschickt wird.
Es wird keine Protokolldatei gelöscht oder komprimiert.
 

logtext batchname "Text zum Mitprotokollieren." ECHO MONTHLY
oder
logtext batchname "We want to log this text ECHO

Es wird in eine Datei mit dem Namen "batchnameyyyy-mm.log" geschrieben. Der Inhalt der Textzeile ist mit dem verhergehenden Beispiel identisch.
 

logtext batchname "Text zum Mitprotokollieren." ECHO DAILY 10

Erstellt täglich eine neue Protokolldatei und behält die Dateien der letzten 10 Tage. Ältere Dateien werden automatisch gelöscht.
 

logtext batchname "Text zum Mitprotokollieren." ECHO DAILY 10 10

Behält die Protokolldateien der letzten 10 Tage. Ältere Dateien werden gepackt (mit gzip). Die letzten 10 gepackten Dateien werden ebenfalls behalten. Alles in allem verbleiben also immer 10 Textdateien und 10 komprimierte Dateien. Noch ältere Dateien werden automatisch gelöscht.
 

logtext c:\windows\logfiles\batchname "Text zum Mitprotokollieren." ECHO DAILY 2 20

Die Protokolldateien werden im Ordner c:\windows\logfiles abgelegt, davon jeweils 2 unkomprimierte und 20 komprimierte Dateien behalten.
 

logtext %SystemRoot%\batchname "Text zum Mitprotokollieren." ECHO DAILY 2 20

Ermittelt automatisch das Systemverzeichnis durch den Kommandozeilen-Interpreter und speichert die Protokolldateien darin ab.
 

batch.cmd | logtext %SystemRoot%\batchname_ "Dieser Text wird ignoriert." ECHO STDIN 2 20

Die Ausgaben (keine Fehlermeldungen) der Batch-Datei batch.cmd werden in die Datei %SystemRoot%\batchname_yyyy-mm-dd.log protokolliert.
 

batch.cmd 2>&1 | logtext %SystemRoot%\batchname_ "Dieser Text wird ignoriert." ECHO STDIN 2 20

Alle Ausgaben (Standard und Fehlermeldungen) der Batch-Datei batch.cmd werden in die Datei %SystemRoot%\batchname_yyyy-mm-dd.log protokolliert.

Ein gutes Beispiel zur Verwendung des Kommandozeilen-Programms logtext findet sich auch in der Stapelverarbeitungs-Datei DeleteTempFolder.
 

Anmerkungen:

Hier ist eine der dümmsten Fragen zu dem Programm, die ich jemals gehört habe:
"How can I change the date/time format to mm/dd/yy?"
"Wie kann ich das Format von Datum/Uhrzeit auf mm/dd/yy stellen?"

Schlaue Antwort:
Wenn Sie Datum und Uhrzeit nicht in der Notation nach ISO8601 haben möchten, dann müssen Sie entweder ein anderes Hilfsprogramm, wie z.B. logtime, das bei den Windows Ressource Kits dabei ist und irgendwo im Netz zu finden sein sollte, hernehmen oder auf nationale Datumsformate besser verzichten. Das ISO8601-Format ist übrigens auch Bestandteil von DIN 5008. Hierzu ist auch das Dokument unter Implementation of the ISO 8601 Standard Around The World sehr interessant.

Noch schlauere Antwort:
Ein bestimmter Tag in England war mal 05/11/2000. Anscheinend hätte ein Amerikaner deshalb die Bonfire-Nacht im Mai gefeiert. Prost.

Zur Vermeidung weiterer Rückfragen: 2000-11-05 kennzeichnet den 5. November 2000, nach englischer Schreibweise also 05/11/2000, während die Amis 11/05/2000 schreiben. Noch weitere Fragen, warum logtext die Notation nach ISO8601 verwendet? Besser nicht stellen.

Navigation: This page in English - Hauptseite - Inhalt
 
 

---

Alle Skripten (Batch-Dateien) und Programme bereitgestellt von www.wabel.de.
Wagner Belmer GbR (WaBel)

(C) Thomas Belmer

ASAMnet - - PMView - Allee Parkhotel Maximilian - Autospenglerei Belmer - Email - Heimseite von Thomas - Bieruhr - Panoramas - Amberg live