[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Alter einer Datei in Sekunden ermitteln
[Thread Prev] | [Thread Next]
- Subject: Alter einer Datei in Sekunden ermitteln
- From: Raphael Eiselstein <rabe@xxxxxxxxx>
- Date: Fri, 25 Mar 2011 23:00:22 +0100
- To: uugrn@xxxxxxxxxxxxxxx
Hallo zusammen, fuer eine Art watchdog-Funktion benoetige ich das Alter einer Datei in Sekunden. Im Normalbetrieb wird diese Datei zB alle 60sec getoucht. Ich will periodisch ermitteln, wenn diese Datei zB aelter als 80sec ist und eine Aktion ausloesen. Unter Linux habe ich dazu folgendes Konstrukt gebastelt: AGE=$(( $(date +%s) - $(date +%s --date "$(stat --format %y /var/run/filename )") ))" wobei das aufgeschlueselt etwa folgendes ist: NOW_SEC=$(date +%s) FILEDATE=$(stat --format %y /var/run/filename ) FILEDATE_SEC=$(date +%s --date "${FILEDATE}" AGE=$(( ${NOW_SEC} - ${FILEDATE_SEC} )) test ${AGE} -gt 80 && do_alarm Jetzt die Frage, ob es ein Tool gibt was direkt AGE erzeugt, also z.B. $ fileage /var/run/filename 42 ... falls die Datei 42sec derzeit alt ist. Gibts da schoenere Loesungen? Gruss Raphael PS: Unter FreeBSD geht das mit stat so: $ stat -f %Dm /tmp 1301090275 (= Unix Timestamp am "Fr 25 Maer 2011 22:57:55 CET") -- Raphael Eiselstein <rabe@xxxxxxxxx> http://rabe.uugrn.org/ xmpp:freibyterægmx.de | https://www.xing.com/profile/Raphael_Eiselstein GnuPG: E7B2 1D66 3AF2 EDC7 9828 6D7A 9CDA 3E7B 10CA 9F2D .........|.........|.........|.........|.........|.........|.........|.. -- UUGRN e.V. http://www.uugrn.org/ http://mailman.uugrn.org/mailman/listinfo/uugrn Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste Archiv: http://lists.uugrn.org/