Wenn Sie die aktuelle Datums- und Uhrzeitangabe als Dateinamen verwenden möchten, können Sie die Befehlsersetzung verwenden date
und ausführen .
$ md5sum /etc/mtab > "$(date +"%Y_%m_%d_%I_%M_%p").log"
Dies führt dazu, dass die Datei 2016_04_25_10_30_AM.log
(mit der aktuellen Datums- und Uhrzeitangabe) mit dem MD5-Hashwert /etc/mtab
als Inhalt erstellt wird.
Bitte beachten Sie, dass Dateinamen mit Zeitstempeln im 12-Stunden-Format möglicherweise nicht so nach Namen sortiert werden, wie Sie es möchten. Sie können dieses Problem vermeiden, indem Sie stattdessen Zeitstempel im 24-Stunden-Format verwenden.
Wenn Sie dieses Datumsformat nicht verwenden müssen, können Sie ein ISO 8601-konformes Datums- / Uhrzeitformat verwenden. Einige Beispiele zum Generieren gültiger ISO 8601-Datums- / Uhrzeitdarstellungen:
$ date +"%FT%T"
2016-04-25T10:30:00
$ date +"%FT%H%M%S"
2016-04-25T103000
$ date +"%FT%H%M"
2016-04-25T1030
$ date +"%Y%m%dT%H%M"
20160425T1030
Wenn Sie sicherere Dateinamen möchten (z. B. aus Gründen der Windows-Kompatibilität), können Sie die Doppelpunkte im Zeitabschnitt weglassen.
Bitte beachten Sie, dass die obigen Beispiele alle die lokale Systemzeit annehmen. Wenn Sie eine Zeitdarstellung benötigen, die in allen Zeitzonen konsistent ist, sollten Sie einen Zeitzonenversatz oder eine UTC-Zeit angeben. Sie können einen ISO 8601-kompatiblen Zeitzonenversatz erhalten, indem Sie "% z" im Formatteil Ihres date
Anrufs wie folgt verwenden:
$ date +"%FT%H%M%z"
2016-04-25T1030-0400
Sie können die UTC-Zeit in Ihrem date
Aufruf abrufen, indem Sie das -u
Flag angeben und "Z" am Ende der Datums- / Uhrzeitzeichenfolge hinzufügen, um anzugeben, dass die Zeit wie folgt in UTC angegeben ist:
$ date -u +"%FT%H%MZ"
2016-04-25T1430Z