Unter OS X möchte ich, dass mein Datum im Format YYYY-MM-DD HH:MM
der Ausgabe für die Datei vorliegt.
Um eine Datei anzugeben, würde ich Folgendes verwenden:
stat -f "%Sm" -t "%Y-%m-%d %H:%M" [filename]
Wenn ich es für eine Reihe von Dateien ausführen möchte, kann ich Folgendes tun:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
done
In diesem Beispiel wird das letzte Mal gedruckt, als ich den sudo periodic daily weekly monthly
Befehl ausgeführt habe, da er auf die Protokolldateien verweist.
Um die Dateinamen unter jedem Datum hinzuzufügen, würde ich stattdessen Folgendes ausführen:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
echo "$i"
done
Die Ausgabe wäre die folgende:
2016-40-01 16:40
/var/log/daily.out
2016-40-01 16:40
/var/log/monthly.out
2016-40-01 16:40
/var/log/weekly.out
Leider bin ich mir nicht sicher, wie ich den Zeilenumbruch verhindern und den Dateinamen an das Ende des Datums anhängen kann, ohne dem Skript weitere Zeilen hinzuzufügen.
PS - Ich verwende es #!/usr/bin/env bash
tagsüber als Python-Benutzer und habe bash
stattdessen verschiedene Versionen von auf meinem System installiert#!/bin/bash