Über die Befehlszeile möchte ich eine Protokolldatei mit dem heutigen Datum im Namen erstellen (zum Beispiel ist heute der 17.05.2011, also müsste der Dateiname sein log051711
).
Ich weiß, wie man die Datei ( touch filename
) erstellt, aber ich weiß nicht, wie ich das heutige Datum erhalte. Ich habe im Handbuch nachgesehen date
, aber es scheint, dass ich die Ausgabe nicht wirklich formatieren kann.
Jede Hilfe wäre dankbar.
command-line
filename
date
Louis B.
quelle
quelle
touch "log$(date +'\%m\%d\%y')"
Ausführen des Befehls
gibt dies als Ausgabe an:
quelle
myfilename-date +%d-%m-%Y
.date +"%d-%m-%Y"
das ist genug ... es wird nur das Datum 21-02-2014Eine der möglichen Lösungen:
schafft
log111017
quelle
Ich bin sicher, jemand anderes hat einen besseren Weg, dies zu tun, aber vorausgesetzt, Sie möchten Monat-Tag-Jahr, sollte dies funktionieren:
und Sie können% m,% d,% Y neu anordnen, um die gewünschte Reihenfolge widerzuspiegeln. Auf der Manpage für Datum erfahren Sie mehr über zusätzliche Formate.
quelle
Python kann diesen Job auch erledigen. Das kleine Skript dafür wäre das Folgende:
Die Idee hier ist einfach: Wir verwenden
time.gmtime()
, um das aktuelle Datum abzurufen, bestimmte Felder aus der zurückgegebenen Struktur zu extrahieren, entsprechende Felder in Zeichenfolgen zu konvertieren und einen Dateinamen mit dem resultierenden Namen zu erstellen.Testlauf:
Zum Zeitpunkt des Schreibens ist es der 3. Januar 2017. Der resultierende Dateiname lautet also entsprechend Monat, Tag, Jahr -
log010317
quelle