Formatieren Datum und Uhrzeit in Bash

Nilesh Katuwal 22 März 2022
  1. Verwenden des eingebauten printf zum Formatieren von Datum und Uhrzeit in Bash
  2. Verwenden des Befehls date Formatieren Sie Datum und Uhrzeit in Bash
Formatieren Datum und Uhrzeit in Bash

Um ein Datum oder eine Uhrzeit in einem Linux-Shell-skript zu formatieren, verwenden Sie den Standardbefehl date.

Derselbe Befehl kann mit dem Shell-Skript verwendet werden. Der Datumsbefehl in Linux zeigt und ändert das Systemdatum und die Uhrzeit.

Benutzer können diesen Befehl auch verwenden, um die Zeit in verschiedenen Formaten auszudrucken und zukünftige und frühere Daten zu berechnen.

Verwenden des eingebauten printf zum Formatieren von Datum und Uhrzeit in Bash

Es ist besser, in einer Bash-Version größer oder gleich 4.2 den eingebauten printf-Datumsformatierer anstelle des externen Datumsformatierers zu verwenden.

So erhalten Sie das Format YYYY-MM-DD:

$ printf '%(%Y-%m-%d)T\n' -1

-1 bezeichnet die aktuelle Zeit.

Ausgabe:

2021-12-21

Wir können den obigen Befehl auch schreiben als:

$ printf '%(%F)T\n' -1

Ausgabe:

2021-12-21

Wir können die aktuelle Uhrzeit speichern, indem wir -v verwenden und den Variablennamen angeben. Um die aktuelle Uhrzeit in einer Variablen cdate zu speichern und auszudrucken, können wir folgendes tun:

$ printf -v cdate '%(%F)T' -1
$ echo $cdate

Der obige Befehl hat das aktuelle Datum als Variable erfasst und in cdate gespeichert, und echo gibt den Wert der Variablen aus.

Ausgabe:

2021-12-21

Verwenden des Befehls date Formatieren Sie Datum und Uhrzeit in Bash

Wir können den Befehl date für Bash-Versionen kleiner als 4.2 verwenden.

So zeigen Sie das aktuelle Datum im Format MM-TT-JJ an:

$ date +"%m-%d-%y"

Das Symbol + kennzeichnet eine benutzerdefinierte Formatzeichenfolge, die angibt, wie Datum und Uhrzeit angezeigt werden sollen.

Ausgabe:

12-21-21

Um das Jahr in ein vierstelliges Jahr umzuwandeln, ändern Sie y in Y.

$ date +"%m-%d-%Y"

Ausgabe:

12-21-2021

Wir können auch Folgendes tun, um das aktuelle Datum im Format YYYY-MM-DD zu drucken.

$ date -I

Ausgabe:

2021-12-21

Nur Zeit anzeigen:

$ date +"%T"

Ausgabe:

13:01:00

So zeigen Sie die Zeit im Format HH:MM an:

$ date +"%H-%M"

Ausgabe:

13-02

Um das aktuelle Datum in der Shell-Variablen zu speichern, können wir Folgendes tun:

$ cdate=$(date +"%m-%d-%Y")
$ echo $cdate

Wir haben das aktuelle Datum erfasst und in cdate gespeichert. echo gibt den cdate-Wert aus.

Ausgabe:

12-21-2021

Um N Tage im date hinzuzufügen, verwenden wir den folgenden Befehl:

date -d="YYYY-MM-DD+N days"

Schauen wir uns ein Beispiel an.

$ date -d "2021-12-21+20 days"

Ausgabe:

Mon 10 Jan 2022 12:00:00 AM 

Verwandter Artikel - Bash DateTime