Ich will den Timestamp einer Datei auf einen bestimmten Wert setzen. Das geht normalerweise so:
1 | touch -t 201103270130.12 test.txt |
Das setzt das Dateidatum von test.txt erfolgreich und wie erwartet auf 27.03.2011 01:30 (und 12 Sekunden). So weit so gut. Aber folgender Befehl liefert eine unerwartete Fehlermeldung:
1 2 | touch -t 201103270230.12 test.txt touch: invalid date format `201103270230.12' |
Invalid date format! 02:30:12 ist doch genau so eine gültige Uhrzeit wie 01:30:12!
Nach weiterem Experimentieren bin ich daraufgekommen, dass er ausschließlich mit Uhrzeiten zwischen 02:00 und 02:59 Probleme hat:
1 2 3 4 5 6 7 8 9 10 11 | for i in `seq 1 9` ; do echo $i ; touch -t 201103270${i}30.12 test.txt ; done 1 2 touch: invalid date format `201103270230.12' 3 4 5 6 7 8 9 |
WTF? Kann das vielleicht was mit Zeitzone zu tun haben? Aktuell: CEST, dh UTC+2, hier finden sich die 2 Stunden wieder ...
Ideen?