Code: Alles auswählen
stat [Dateiname1] | grep Modifiziert > dateiname2
Gibt's andere Ideen?
Oder mal so gefragt: Kann man sich darauf verlassen, dass das Objekt der Begierde immer in der 6.Zeile der stat-Ausgabe steht?
Grüße, Günther
Code: Alles auswählen
stat [Dateiname1] | grep Modifiziert > dateiname2
Code: Alles auswählen
stat /bin/bash
Datei: „/bin/bash“
Größe: 1029624 Blöcke: 2016 EA Block: 4096 reguläre Datei
Gerät: 807h/2055d Inode: 52 Verknüpfungen: 1
Zugriff: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Zugriff : 2015-01-18 08:14:23.766529375 +0100
Modifiziert: 2014-11-13 00:08:51.000000000 +0100
Geändert : 2014-11-15 20:28:58.559657663 +0100
Geburt : -
## Ausgabe dieser Zeiten mit find und -printf in gleicher Reihenfolge:
find /bin/bash -printf '%a\n%t\n%c\n'
Sun Jan 18 08:14:23.0766529375 2015
Thu Nov 13 00:08:51.0000000000 2014
Sat Nov 15 20:28:58.0559657663 2014
## Auch das Ausgabeformat kann recht individuell eingestellt werden, zB Modifiziert als H:M:S:
find /bin/bash -printf '%TH:%TM:%TS\n'
00:08:51.0000000000
## Mit Variablen läßt sich gut arbeiten, hier mit '-' als Trennzeichen:
x=$(find /bin/bash -printf '%TH-%TM-%TS\n')
echo $x
00-08-51.0000000000
Code: Alles auswählen
stat --printf="%y\n%Y\n" /bin/bash
Code: Alles auswählen
man stat
Code: Alles auswählen
find /pfad/zur/datei -printf '%TY-%Tm-%Td-%TH-%TM-%TS\n' (für zweistelliges Jahr %Ty anstatt von %TY)
Code: Alles auswählen
find . -type f -printf '%p; %TY-%Tm-%Td-%TH-%TM-%TS\n'
Code: Alles auswählen
x=$(find /bin/bash -printf '%TH-%TM-%TS\n')
Code: Alles auswählen
stat --printf="%y\n%Y\n" /bin/bash
Code: Alles auswählen
%y Menschenlesbare Zeit der letzten Änderung
Code: Alles auswählen
%z Menschenlesbare Zeit der letzten Änderung
Code: Alles auswählen
x=$(stat --printf="%y" /bin/bash)
Scheint laut Sourcecode (coreutils) so zu sein:guennid hat geschrieben:Gehe ich recht in der Annahme, dass sich %y auf Zeile 6 in der vollständigen stat-Ausgabe, die Zeit der letzten Änderung IN der Datei, bezieht, während sich %z auf Zeile 7 (die mich hier nicht interessiert) bezieht?
Code: Alles auswählen
format = xasprintf ("%s%s", format, _("\
Access: %x\n\
Modify: %y\n\
Change: %z\n\
Birth: %w\n\
"));
Code: Alles auswählen
...
%y Time of last modification, human-readable\n\
...
%z Time of last change, human-readable\n\
...