PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Aktuelle Sicherungsdatei vorhanden?



mr.ed
08-11-2006, 16:46
Hallo zusammen,

ich habe einen Ordner mit mehreren Unterordnern, wo ich täglich Backupsdateien per cronjob von verschiedenen Servern reinstelle.
Ich möchte jetzt in den einzelnen Unterordnern prüfen, ob eine Sicherungsdatei von heute vorhanden ist, falls nicht eine Meldung per Mail.
Habe es mit dem Befehl "find" versucht.
In einer Schleife gehe ich die einzelnen Unterverzeichnisse durch und suche dort die Dateien die von heute."find $BACKUPDIR/*.* -mtime -1"
Problem: find gibt immer 0 als Rückgabewert zurück, falls der Befehl erfogreich ausgeführt wurde egal ob dort die gesuchten Dateien vorhanden sind oder nicht.

Derzeit sieht mein Skript etwa so aus:
******
#! /bin/bash
for i in /PFAD1 /PFAD2 .....
do
BACKUPDIR=$i

find $BACKUPDIR/*.* -mtime -1 # ist aelter als 1 Tag???????

if [ $? = "0" ]; then # Return-Code(0 bei erfolgreicher Ausfuehrung)
echo "vorhanden"
else
echo "Keine Sicherungedateien im Verzeichniss $BACKUPDIR vorhanden!!!"
fi
done
************
Habt ihr eine Idee wie ich es prüfen kann?
Bin für eure Tipps sehr dankbar!

rais
18-11-2006, 19:25
Hallo,

In einer Schleife gehe ich die einzelnen Unterverzeichnisse durch und suche dort die Dateien die von heute."find $BACKUPDIR/*.* -mtime -1"
Problem: find gibt immer 0 als Rückgabewert zurück, falls der Befehl erfogreich ausgeführt wurde egal ob dort die gesuchten Dateien vorhanden sind oder nicht.

Afair gibt find nur dann etwas anderes als 0 zurück, wenn bei der Suche ein Fehler aufgetreten ist.
So gesehen war find erfolgreich, egal ob Dateien gefunden wurden, oder nicht.;)
Vllt kannst Du Dein Skript ja ein wenig umstellen...


:
for X in `find $BACKUPDIR/ -name "*.*" -mtime -1 -print` dummy; do
if [ $X = dummy ]; then
#Ende erreicht
else
# $X hält nun gleich den Namen der gefundenen Datei...
fi
done
:

MfG,