Einführung
Linux date
Der Befehl zeigt Datum und Uhrzeit des Systems an und stellt sie ein. Dieser Befehl ermöglicht es Benutzern auch, die Zeit in verschiedenen Formaten auszudrucken und zukünftige und vergangene Daten zu berechnen.
Lesen Sie weiter, um zu erfahren, wie Sie das date
verwenden Befehl unter Linux.
Voraussetzungen
- Ein System, auf dem Linux ausgeführt wird
- Ein Benutzerkonto mit Root-Rechten
- Zugriff auf ein Terminalfenster/eine Befehlszeile
Linux-Datumsbefehlssyntax
Die Syntax für das date
Befehl ist:
date [option]... [+format]
Verwendung des date-Befehls unter Linux
Um die aktuelle Systemzeit und das aktuelle Datum anzuzeigen, geben Sie date
ein Befehl:
date
Die Ausgabe zeigt den Wochentag, den Tag des Monats, den Monat, das Jahr, die aktuelle Uhrzeit und die Zeitzone an. Standardmäßig das date
Befehl wird auf die Zeitzone des Betriebssystems gesetzt.
Das -d
Option ermöglicht es Benutzern, an einem bestimmten Datum zu arbeiten. Beispielsweise können wir den folgenden Befehl eingeben:
date -d "2000-11-22 09:10:15"
Sie können das --date
verwenden Befehl, um die angegebene Datumszeichenfolge im Format eines Datums anzuzeigen. Dieser Befehl wirkt sich nicht auf die tatsächlichen Datums- und Zeitwerte des Systems aus und druckt nur das angeforderte Datum. Zum Beispiel:
date --date="09/10/1960"
Formatoptionen für Linux-Datumsbefehle
Zum Formatieren des date
Befehlsausgabe können Sie Steuerzeichen verwenden, denen ein +
vorangestellt ist Schild. Formatsteuerelemente beginnen mit dem % Symbol und werden durch ihre aktuellen Werte ersetzt.
Hier das %Y Zeichen wird durch das aktuelle Jahr ersetzt, %m mit Monat und %d mit dem Tag des Monats:
date +"Year: %Y, Month: %m, Day: %d"
Hier sind zwei weitere Formatierungsbeispiele:
date "+DATE: %D%nTIME: %T"
date +"Week number: %V Year: %y"
Dies sind die gebräuchlichsten Formatierungszeichen für das date
Befehl:
%D
– Datum als mm/tt/jj anzeigen%Y
– Jahr (z. B. 2020)%m
– Monat (01-12)%B
– Langer Monatsname (z. B. November)%b
– Kurzer Monatsname (z. B. Nov)%d
– Tag des Monats (z. B. 01)%j
– Tag des Jahres (001-366)%u
– Wochentag (1-7)%A
– Vollständiger Name des Wochentags (z. B. Freitag)%a
– Kurzbezeichnung des Wochentags (z. B. Fr)%H
– Stunde (00-23)%I
– Stunde (01-12)%M
– Minute (00-59)%S
– Sekunde (00-60)
Um alle Formatierungsoptionen anzuzeigen, führen Sie date --help
aus oder der man-Befehl man date
in Ihrem Terminal.
Datum unter Linux einstellen oder ändern
Um die Systemuhr manuell zu ändern, verwenden Sie den Befehl set. Zum Beispiel, um das Datum und die Uhrzeit auf 13. Mai 2010, 17:30 Uhr einzustellen , geben Sie Folgendes ein:
date --set="20100513 05:30"
Bei den meisten Linux-Distributionen wird die Systemuhr mit ntp
synchronisiert oder der systemd-timesyncd
Seien Sie also vorsichtig, wenn Sie die Uhr manuell einstellen.
Vergangene Daten anzeigen
Verwenden Sie --date
Option zur Anzeige vergangener Daten in Linux. Das date
Der Befehl akzeptiert Werte wie "tomorrow"
, "Friday"
, "last Friday"
, "next Friday"
, "next week"
, und ähnliches. Verwenden Sie also die folgenden Zeichenfolgen, um vergangene Daten zu drucken::
date --date="2 year ago"
date --date="yesterday"
date --date="10 sec ago"
Zukünftige Daten anzeigen
Das --date
Option kann auch zukünftige Daten anzeigen. Wie bei vergangenen Daten können Sie Zeichenfolgen eingeben, um kommende Daten zu drucken:
date --date="next monday"
date --date="4 day"
date --date="tomorrow"
Den Datumsstring in der Dateizeile anzeigen
Die --file
Option druckt die Datumszeichenfolge, die in jeder Zeile der Datei vorhanden ist. Im Gegensatz zu --date
Option --file
kann mehrere Datumszeichenfolgen in jeder Zeile darstellen.
Dies ist die Syntax für die --file
Befehl:
date --file=file_name.txt
Hier verwenden wir den cat-Befehl, um Datumsangaben zu einer Datei hinzuzufügen und sie dann mit dem date-Befehl auszudrucken:
Zeitstempel der letzten Änderung einer Datumsdatei anzeigen
Bei Verwendung des -r
Option, das date
Befehl gibt die letzte Änderungszeit einer Datei aus. Beispielsweise gibt der folgende Befehl aus, wann die Hosts-Datei zuletzt geändert wurde:
date -r /etc/hosts
Eine Zeitzone überschreiben
Standardmäßig das date
Der Befehl verwendet die in /etc/localtime
definierte Zeitzone . Um eine andere Zeitzone in der Umgebung zu verwenden, legen Sie TZ
fest Variable auf die gewünschte Zeitzone.
Um beispielsweise zur New Yorker Zeit zu wechseln, geben Sie Folgendes ein:
TZ='America/New_York' date
Geben Sie das date
ein Befehl, um das System auf seine Standardzeitzone zurückzusetzen. Um alle verfügbaren Zeitzonen anzuzeigen, verwenden Sie timedatectl list-timezones
Befehl.
Das date
Der Befehl kann auch die Ortszeit für eine andere Zeitzone anzeigen. Um beispielsweise die Ortszeit für nächsten Montag um 16:30 Uhr an der australischen Ostküste anzuzeigen, geben Sie Folgendes ein:
date -d 'TZ="Australia/Sydney" 04:30 next Monday'
Datum mit anderen Befehlen verwenden
Sie können das date
verwenden Befehl zum Erstellen von Dateinamen, die die aktuelle Uhrzeit und das aktuelle Datum enthalten. Die folgende Eingabe erstellt eine Backup-MySQL-Datei im Format des aktuellen Datums:
mysqldump database_name > database_name-$(date +%Y%m%d).sql
Eine weitere häufige Verwendung des date
Der Befehl befindet sich in Shell-Skripten. Nachfolgend weisen wir die Ausgabe von date
zu zum date_now
Variable:
date_now=$(date "+%F-%H-%M-%S")
Verwenden Sie die Unix-Epochenzeit (Epoch Converter)
Sie können das date
verwenden Befehl als Epochenkonverter. Epoche oder Unix-Zeitstempel ist die Anzahl der Sekunden, die seit dem 1. Januar 1970 um 00:00:00 UTC vergangen sind.
Um die Anzahl der Sekunden von der Epoche bis zum aktuellen Tag anzuzeigen, verwenden Sie %s
Formatkontrolle:
date +%s
Geben Sie Folgendes ein, um zu sehen, wie viele Sekunden von der Epoche bis zu einem bestimmten Datum vergangen sind:
$ date -d "1984-04-08" +"%s"