BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

Modifizierungsdatum zweier Dateien vergleichen

Soll zum Beispiel in einem Shellskript festgestellt werden, welche von zwei Dateien als letzte verändert wurde, so kann man dazu newer(1) verwenden. newer findet man in den FreeBSD-Ports unter misc/newer:

# cd /usr/ports/misc/newer && make install clean

An newer werden als Argumente die beiden Dateinamen übergeben. Ist das Modifizierungsdatum der zweiten Datei neuer als das der ersten, wird von newer der Rückgabewert 1 ausgegeben:

# touch datei1
# touch datei2
# newer datei1 datei2
# echo $?
1

Ist die erste Datei neuer, so wird als Rückgabewert 0 zurückgegeben:

# touch datei1
# newer datei1 datei2
# echo $?
0

Existiert die zweite Datei gar nicht, so wird eine 0 zurückgegeben:

# rm datei2 
# newer datei1 datei2
# echo $?
0

Existiert die erste Datei nicht, wird eine 1 zurückgegeben:

# mv datei1 datei2
# newer datei1 datei2
# echo $?
1
Comments (2)  Permalink