Next: dd
Up: Von GNU's, Muscheln und
Previous: cut
Weniger zur Datumsausgabe auf der Kommandozeile als vielmehr zur Benutzung in Shellscripts kann date das Datum in vielfältiger Weise formatiert ausgeben. Es arbeitet dabei im Prinzip als Frontend zur strftime(3) C-Bibliotheksfunktion. Ein durch `+' eingeleiteter Formatstring wird durch entsprechende Datumsangaben ergänzt und auf dem Standardausgabekanal angezeigt.
In einem vollständig eingerichteten Linux System paßt sich date automatisch an die lokale Zeitzone an. Insbesondere findet der Wechsel zwischen Mitteleuropäischer Zeit (MET) und Sommerzeit (Daylight Saving Time (DST), MEST) automatisch statt. Die Zeitzone kann mit der Umgebungsvariablen TZ verändert werden.
Durch Belegung einer der Umgebungsvariablen LANG oder LC_TIME mit einem gültigen Wert (siehe Locales) kann das Ausgabeformat von date auch im länderspezifischen Format erfolgen.
In dem durch ein `+' eingeleiteten Formatstring werden die folgenden Parameter unterstützt:
Die Angabe des neuen Datums kann entweder mit der -s Option im Format der normalen Datumsausgabe erfolgen, oder sie erfolgt in Form einer einzigen Zahl. Die einzelnen Stellen der Zahl haben folgende Bedeutung:
In der TZ Umgebungsvariablen kann eine andere als die von der Systemverwalterin vorgegebene Zeitzone eingestellt werden. Wenn keine nach der Zeitzone benannte Datei in /usr/lib/zoneinfo existiert, wird automatisch die GMT benutzt.
Wenn die aktuelle Version von date Locales unterstützt kann in der Umgebungsvariablen LANG oder LC_TIME ein lokales Datumsformat bestimmt werden. Der Wert dieser Variablen muß auf eines der Unterverzeichnisse von /usr/lib/locale passen und in diesem Verzeichnis muß eine Datei LC_TIME mit der gewünschten tminfo-Struktur existieren. Zusätzliche Informationen zu Locales finden Sie hier.
$ date "+Es ist %H Stunden und %M Minuten nach Mitternacht." Es ist 16 Stunden und 03 Minuten nach Mitternacht. $ _können Sie auf einfache Art eine umständliche Uhrzeit anzeigen lassen.
Wenn Sie Superuserrechte haben, können Sie die Systemzeit einstellen:
# date -s "Thu Sep 16 15:09:07 GMT 1993" Thu Sep 16 17:09:07 MET DST 1993 # _Das Datum wird intern durch eine vorzeichenbehaftete vier Byte Integer Variable repräsentiert. Der ,,Nullpunkt`` ist am 1.1.1970 um 0 Uhr. Dieses Datum wird auch als Epoche bezeichnet. Der Bereich zulässiger Systemzeiten beginnt am 13.12.1901 um 20:45:52 und endet am 19.01.2038 um 03:14:07 Universal Coordinated Time.
Das Linux Anwenderhandbuch