Date: Unterschied zwischen den Versionen
K Textersetzung - „[[Kategorie/“ durch „[[Kategorie:“ |
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“ |
||
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 26: | Zeile 26: | ||
== Uhrzeit anzeigen == | == Uhrzeit anzeigen == | ||
date +'%Y%m%d %H%M%S' # ergibt z. B. 20060905 093432 | date +'%Y%m%d %H%M%S' # ergibt z. B. 20060905 093432 | ||
# allgemein | # allgemein | ||
date +FORMAT # FORMAT ist ein String, wie er von strftime(3) interpretiert wird | date +FORMAT # FORMAT ist ein String, wie er von strftime(3) interpretiert wird | ||
Zeile 62: | Zeile 62: | ||
== Umstellung Winter-/Sommerzeit == | == Umstellung Winter-/Sommerzeit == | ||
== | == Aufruf == | ||
$ date [OPTION]… [+FORMAT] | $ date [OPTION]… [+FORMAT] | ||
$ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] | $ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] | ||
Zeile 123: | Zeile 123: | ||
| %% || Ein Prozentzeichen (»%«) | | %% || Ein Prozentzeichen (»%«) | ||
|- | |- | ||
| %a || Abgekürzter Name des Wochentags der Locale (z. B. So) | | %a || Abgekürzter Name des Wochentags der Locale (z. B. So) | ||
|- | |- | ||
| %A || Voller Name des Wochentags der Locale (z. B. Sonntag) | | %A || Voller Name des Wochentags der Locale (z. B. Sonntag) | ||
|- | |- | ||
| %b || Abgekürzter Monatsname der Locale (z. B. Jan) | | %b || Abgekürzter Monatsname der Locale (z. B. Jan) | ||
|- | |- | ||
| %B || Voller Monatsname der Locale (z. B. Januar) | | %B || Voller Monatsname der Locale (z. B. Januar) | ||
|- | |- | ||
| %c || Datum und Zeit der Locale (z. B. Do 03 Mär 2005 23:05:25 CET) | | %c || Datum und Zeit der Locale (z. B. Do 03 Mär 2005 23:05:25 CET) | ||
|- | |- | ||
| %C || Jahrhundert; wie %Y, aber ohne die letzten beiden Stellen (z. B. 20) | | %C || Jahrhundert; wie %Y, aber ohne die letzten beiden Stellen (z. B. 20) | ||
|- | |- | ||
| %d || Tag des Monats (z. B. 01) | | %d || Tag des Monats (z. B. 01) | ||
|- | |- | ||
| %D || Amerikanisches Datumsformat; dasselbe wie %m/%d/%y | | %D || Amerikanisches Datumsformat; dasselbe wie %m/%d/%y | ||
Zeile 173: | Zeile 173: | ||
| %q || Quartal des Jahres (1..4) | | %q || Quartal des Jahres (1..4) | ||
|- | |- | ||
| %r || Zeit im 12‐Stunden‐Format der Locale (z. B. 11:11:04) | | %r || Zeit im 12‐Stunden‐Format der Locale (z. B. 11:11:04) | ||
|- | |- | ||
| %R || Stunden und Minuten im 24‐Stunden‐Format; dasselbe wie %H:%M | | %R || Stunden und Minuten im 24‐Stunden‐Format; dasselbe wie %H:%M | ||
Zeile 195: | Zeile 195: | ||
| %W || Wochennummer des Jahres, mit Montag als erstem Tag der Woche (00..53) | | %W || Wochennummer des Jahres, mit Montag als erstem Tag der Woche (00..53) | ||
|- | |- | ||
| %x || Datumsrepräsentation der Locale (z. B. 31.12.1999) | | %x || Datumsrepräsentation der Locale (z. B. 31.12.1999) | ||
|- | |- | ||
| %X || Zeitrepräsentation der Locale (z. B. 23:13:48) | | %X || Zeitrepräsentation der Locale (z. B. 23:13:48) | ||
|- | |- | ||
| %y || Die letzten zwei Ziffern des Jahres (00..99) | | %y || Die letzten zwei Ziffern des Jahres (00..99) | ||
Zeile 203: | Zeile 203: | ||
| %Y || Jahr | | %Y || Jahr | ||
|- | |- | ||
| %z || +hhmm numerische Zeitzone (z. B. -0400) | | %z || +hhmm numerische Zeitzone (z. B. -0400) | ||
|- | |- | ||
| %:z || +hh:mm numerische Zeitzone (z. B. -04:00) | | %:z || +hh:mm numerische Zeitzone (z. B. -04:00) | ||
|- | |- | ||
| %::z || +hh:mm:ss numerische Zeitzone (z. B. -04:00:00) | | %::z || +hh:mm:ss numerische Zeitzone (z. B. -04:00:00) | ||
|- | |- | ||
| %:::z || Numerische Zeitzone, die soviele »:« enthält, wie zur Präzision notwendig sind (z. B. -04, +05:30) | | %:::z || Numerische Zeitzone, die soviele »:« enthält, wie zur Präzision notwendig sind (z. B. -04, +05:30) | ||
|- | |- | ||
| %Z || Alphabetische Zeitzonenabkürzung (z. B. EDT) | | %Z || Alphabetische Zeitzonenabkürzung (z. B. EDT) | ||
|} | |} | ||
Zeile 237: | Zeile 237: | ||
=== Parameter === | === Parameter === | ||
=== | === Umgebung === | ||
=== | === Rückgabewert === | ||
== Konfiguration == | == Konfiguration == | ||
Zeile 245: | Zeile 245: | ||
== Dokumentation == | == Dokumentation == | ||
=== RFC === | === RFC === | ||
=== Man- | === Man-Page === | ||
=== Info-Pages === | === Info-Pages === | ||
# Vollständige Dokumentation unter: <https://www.gnu.org/software/coreutils/date> | # Vollständige Dokumentation unter: <https://www.gnu.org/software/coreutils/date> | ||
Zeile 256: | Zeile 256: | ||
# https://linuxwiki.de/DatumUndUhrzeit | # https://linuxwiki.de/DatumUndUhrzeit | ||
Aktuelle Version vom 12. November 2024, 18:47 Uhr
date - Ausgeben oder Setzen von Systemdatum und -zeit
Beschreibung
- Die aktuelle Uhrzeit im angegebenen FORMAT anzeigen oder die Systemzeit setzen
- Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich
Installation
siehe Kategorie:Coreutils
Anwendungen
Wandelt die Sekunden seit Beginn der Unix-Epoche (1970-01-01 UTC) in ein Datum um
$ date --date='@2147483647'
Zeigt die Zeit an der Westküste der USA an (verwenden Sie tzselect(1), um den Wert für TZ herauszufinden)
$ TZ='America/Los_Angeles' date
Zeigt die örtliche Zeit für 9 Uhr morgens am nächsten Freitag an der Westküste der USA an
$ date --date='TZ="America/Los_Angeles" 09:00 next Fri'
Zeitzone setzen
Die Zeitzone wird durch die Anweisung tzconfig gesetzt:
tzconfig
Die Anweisung erfordert in der Regel Administratorrechte und wird ohne Parameter aufgerufen. Die Zeitzone wird dann von der Anweisung abgefragt.
Uhrzeit anzeigen
date +'%Y%m%d %H%M%S' # ergibt z. B. 20060905 093432 # allgemein date +FORMAT # FORMAT ist ein String, wie er von strftime(3) interpretiert wird
System-Uhr und Hardware-Uhr
Hardware-Uhr
Schaltkreis auf dem Mainboard, der wie eine Quarz-Uhr funktioniert
Betriebssystem-Uhr
das ist eine durch Interrupts angetriebene und nicht gerade sonderlich genaue Software-Uhr
Nachdem man mit date die Software-Uhr gestellt hat, sollte man diese Zeit auch in die Hardware-Uhr übertragen:
# system clock -> hardware clock hwclock --systohc
Ebenso kann man die System-Uhr nach der genaueren Hardware-Uhr neu stellen lassen:
# hardware clock -> system clock hwclock --hctosys
Die Zusatzoption -u zu hwclock sollte man dann verwenden, wenn man die Hardware-Uhr auf UTC (in der Praxis gleichbedeutend mit GMT) laufen hat, was sehr empfehlenswert ist.
Wenn in /etc/adjtime steht
0.667509 1059309076 0.000000 1059309076 UTC
Braucht man den -u Schalter nicht. Statt UTC könnte da auch LOCAL stehen.
Gesetzt wird es bei Debian in /etc/default/rcS
# Set UTC=yes if your system clock is set to UTC (GMT), and UTC=no if not. UTC=yes
Bei RedHat/Mandriva findet sich die Einstellung unter /etc/sysconfig/clock (UTC=true), bei Gentoo unter /etc/rc.conf, oder seit neuem unter /etc/conf.d/clock. Bei SuSE war wohl rc.config? Andere Distributionen?
Umstellung Winter-/Sommerzeit
Aufruf
$ date [OPTION]… [+FORMAT] $ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
date MMTThhmm
DATUMSZEICHENKETTE
MM | Monat |
TT | Tag |
hh | Stunden |
mm | Minuten |
# oder auch in der für USA üblichen Schreibweise: date -s "12/31 23:59"
Bei der Anweisung --date=ZEICHENKETTE kann ein menschenlesbares Datum auf Englisch in einem ziemlich freien Format angegeben werden
- beispielsweise »Sun, 29 Feb 2004 16:21:42 -0800«, »2004-02-29 16:21:42« oder sogar »next Thursday« (nächster Donnerstag)
- Eine Datumszeichenkette darf Teile enthalten, die das Kalenderdatum angeben, die Tageszeit, Zeitzone, den Tag der Woche, eine relative Zeit, ein relatives Datum sowie Zahlen.
- Eine leere Zeichenkette bedeutet den Anfang des aktuellen Tages.
- Das Format der Datumszeichenkette ist komplexer, als es hier in einfachen Worten beschrieben werden kann. In der Info-Dokumentation ist es vollständig erklärt.
Optionen
Unix | GNU | Beschreibung |
---|---|---|
-d | --date=ZEICHENKETTE | Die in ZEICHENKETTE beschriebene Zeit anzeigen, nicht »jetzt« |
--debug | kommentiert das ausgewertete Datum und warnt über fragwürdige Verwendungen nach Stderr | |
-f | --file=DATUMSDATEI | Wie --date; jeweils einmal für jede Zeile in DATUMSDATEI |
-I[FMT] | --iso-8601[=FMT] | Datum und Zeit im ISO-8601-Format anzeigen. FMT=»date« zur Ausgabe nur des Datums (Voreinstellung), »hours«, »minutes«, »seconds« oder »ns« für Datum und Zeit mit angegebener Genauigkeit. Beispiel: 2006-08-14T02:34:56-06:00 |
-R | --rfc-email | Datum und Zeit im RFC-5322-Format anzeigen. Beispiel: Mon, 14 Aug 2006 02:34:56 -0600 |
--rfc-3339=FMT | Datum/Zeit im RFC-3339-Format anzeigen. FMT=»date«, »seconds« oder »ns« für Datum und Zeit mit angegebener Genauigkeit. Beispiel: 2006-08-14 02:34:56-06:00 | |
-r | --reference=DATEI | Zeit der letzten Änderung von DATEI anzeigen |
-s | --set=ZEICHENKETTE | Die Zeit wie in ZEICHENKETTE beschrieben setzen |
-u, --utc | --universal | Koordinierte Weltzeit (UTC) anzeigen oder setzen |
--help | zeigt Hilfeinformationen an und beendet das Programm. | |
--version | gibt Versionsinformationen aus und beendet das Programm. |
FORMAT bestimmt die Ausgabe. Interpretierte Sequenzen sind:
Option | Beschreibung |
---|---|
%% | Ein Prozentzeichen (»%«) |
%a | Abgekürzter Name des Wochentags der Locale (z. B. So) |
%A | Voller Name des Wochentags der Locale (z. B. Sonntag) |
%b | Abgekürzter Monatsname der Locale (z. B. Jan) |
%B | Voller Monatsname der Locale (z. B. Januar) |
%c | Datum und Zeit der Locale (z. B. Do 03 Mär 2005 23:05:25 CET) |
%C | Jahrhundert; wie %Y, aber ohne die letzten beiden Stellen (z. B. 20) |
%d | Tag des Monats (z. B. 01) |
%D | Amerikanisches Datumsformat; dasselbe wie %m/%d/%y |
%e | Tag des Monats, mit Leerzeichen aufgefüllt; dasselbe wie %_d |
%F | Komplettes Datum; dasselbe wie %+4Y-%m-%d |
%g | Die letzten beiden Stellen des Jahres der ISO‐Wochennummer (siehe %G) |
%G | Jahr der ISO‐Wochennummer (siehe %V); normalerweise nur mit %V sinnvoll |
%h | Dasselbe wie %b |
%H | Stunde (00..23) |
%I | Stunde (01..12) |
%j | Tag des Jahres (001..366) |
%k | Stunde, mit Leerzeichen aufgefüllt ( 0..23); dasselbe wie %_H |
%l | Stunde, mit Leerzeichen aufgefüllt ( 1..12); dasselbe wie %_I |
%m | Monat (01..12) |
%M | Minute (00..59) |
%n | Ein Zeilenumbruch |
%N | Nanosekunden (000000000..999999999) |
%p | Das Äquivalent von AM oder PM der Locale; leer, wenn unbekannt |
%P | Wie %p, aber in Kleinbuchstaben |
%q | Quartal des Jahres (1..4) |
%r | Zeit im 12‐Stunden‐Format der Locale (z. B. 11:11:04) |
%R | Stunden und Minuten im 24‐Stunden‐Format; dasselbe wie %H:%M |
%s | Sekunden seit »1970-01-01 00:00:00 UTC« |
%S | Sekunde (00..60) |
%t | Ein Tabulator |
%T | Zeit; dasselbe wie %H:%M:%S |
%u | Tag der Woche (1..7); 1 steht für Montag |
%U | Wochennummer des Jahres, mit Sonntag als erstem Tag der Woche (00..53) |
%V | ISO‐Wochennummer, mit Montag als erstem Tag der Woche (01..53) |
%w | Tag der Woche (0..6); 0 steht für Sonntag |
%W | Wochennummer des Jahres, mit Montag als erstem Tag der Woche (00..53) |
%x | Datumsrepräsentation der Locale (z. B. 31.12.1999) |
%X | Zeitrepräsentation der Locale (z. B. 23:13:48) |
%y | Die letzten zwei Ziffern des Jahres (00..99) |
%Y | Jahr |
%z | +hhmm numerische Zeitzone (z. B. -0400) |
%:z | +hh:mm numerische Zeitzone (z. B. -04:00) |
%::z | +hh:mm:ss numerische Zeitzone (z. B. -04:00:00) |
%:::z | Numerische Zeitzone, die soviele »:« enthält, wie zur Präzision notwendig sind (z. B. -04, +05:30) |
%Z | Alphabetische Zeitzonenabkürzung (z. B. EDT) |
Standardmäßig füllt date numerische Felder mit Nullen auf. Die folgenden optionalen Schalter können »%« folgen:
Option | Beschreibung |
---|---|
- (Minus) | Feld nicht auffüllen |
_ (Unterstrich) | Mit Leerzeichen auffüllen |
0 (Null) | Mit Nullen auffüllen |
+ | Mit Nullen auffüllen und »+« vor zukünftige Jahre mit >4 Ziffern setzen |
^ | Großbuchstaben benutzen, wenn möglich |
# | Groß- und Kleinbuchstaben vertauschen, wenn möglich |
Nach jedem Schalter kommt eine optionale Feldbreite als Dezimalzahl und dann ein optionaler Modifikator, der entweder »E« oder »O« ist. Bei »E« wird die alternative Repräsentation der Locale verwendet, falls vorhanden. Bei »O« werden die alternativen numerischen Symbole der Locale verwendet, falls vorhanden.
Parameter
Umgebung
Rückgabewert
Konfiguration
Dateien
Sicherheit
Dokumentation
RFC
Man-Page
Info-Pages
- Vollständige Dokumentation unter: <https://www.gnu.org/software/coreutils/date>
- lokal verfügbar mit: info '(coreutils) date invocation'