PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abfrage auf Dateidatum



Onemahutu
20-05-2005, 07:35
Hallo,

ich habe einen täglichen Batchlauf, der auf eine datei zugreift, die jeden morgen neu erstellt wird. Jetzt möchte ich noch eine Abfrage einbauen, die prüft, ob die Datei auch von heute ist und nicht von gestern.

Mir würde zwar eine Möglichkeit einfallen, dazu gibt "ls -l" aber das falsche Datumsformat aus.

Kann mir jemand helfen?

Danke für eure Mühe!

klewan
20-05-2005, 10:12
gestern=`stat -t $FILE|awk '{print $11}'`; sollte die modify time sein

Onemahutu
23-05-2005, 14:54
Hallo,

danke für die Antwort, aber mit dem Befehl bekomm ich das nicht hin.

find Dir-name -name Dateiname -mtime +Anzahl_der_Tage

ist schon der richtige Ansatz, aber das reicht mir nicht, da diese
Abfrag sich auf 24 Std. beschränkt, ich aber nur eine Abfrage auf
den Tag haben möchte.
Ich will nur wissen ob die Datei gestern oder heute erstellt wurde, nicht
ob es 24 Std. her war!

Gibts noch andere Vorschläge?

Danke für eure Hilfe.

Hans-Georg Normann
23-05-2005, 20:24
Andere Möglichkeit? Erzeuge zum Ende des Batchlaufes eine neue Referenzdatei. Und dann kannst du mit
if [ DATEI1 -nt DATEI2 ];then ........ prüfen, ob Datei1 jünger als Datei2 ist. Reicht das?

Hans

shark
24-05-2005, 12:32
Hi,

Wenn es nur 2 möglichkeit gibt dass der datei von gestern oder heute ist dann kann man;




let today=`date | awk '{print $3}'`
let file_date= `ls -l | awk '{print $7}'`

if [[ $today = $file_date ]]
then
... TODAY
else
... YESTERDAY
fi




Shark