[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: kopieren von nur vollständig erstellten Dateien



Hallo,

mit folgender Schliefe kannst du das lösen:
while read FILE
do
	if cp ${FILE} <ZIELVERZEICHNIS> ; then
		echo "Kopieren von Datei ${FILE} OK"
	else
		echo "Kopieren von Datei ${FILE} FEHLER"
	fi 
done < <(find <QUELLVERZEICHNIS>/* -mmin +1 -type f)

Hier passiert folgendes:
01.	Finde alle Dateien im Quellverzeichnis, die sich mindestens 1 Minute nicht verändert haben
	Also damit wird sichergestellt, das die Datei vollständig kopiert wurde.
02.	Gefundene Datei wird in die Variable FILE geschrieben
03.	Kopiere Datei nach Zielverzeichnis
04a.	Ist alles gut gegangen, dann kommt eine OK-Meldung
04b.	Ist irgendwas schief gelaufen, dann wird entsprechend die FELHER-Meldung angezeigt
05.	Wurden alle neuen Dateien abgearbeitet, dann verlasse die Schleife

In der Schleife kannst du natürlich auch nur "cp ${FILE} <ZIELVERZEICHNIS>" angeben,
aber dann bekommst du keine Rückmeldung, wenn etwas schief gegangen ist.
Willst du z.b. nur eine Meldung bekommen, wenn es Probleme gab, dann würde die Schleife
so aussehen:

while read FILE
do
	if ! cp ${FILE} <ZIELVERZEICHNIS> ; then
		echo "Kopieren von Datei ${FILE} FEHLER"
	fi 
done < <(find <QUELLVERZEICHNIS>/* -mmin +1 -type f)

Gruß
Andreas


Am 23.06.2012 um 18:09 schrieb Franz Timmer:

> hallo,
> 
> folgende Sachlage:
> in unregelmässigen Abständen werden grössere Dateien in ein Verzeichnis
> kopiert. Dieser Kopiervorgang nimmt eine gewisse Zeit in Anspruch.
> 
> Ich möchte jetzt einen cron-job erstellen, der die Dateien von diesem
> Verzeichnis in ein zweites Verzeichnis auf einer anderen Partition
> verschiebt.
> 
> Wie stelle ich in dem cron-job Skript sicher, dass nur die vollständig
> erstellte Dateien verschoben werden?
> 
> Franz Timmer
> 
> 
> -- 
> Zum AUSTRAGEN schicken Sie eine Mail an debian-user-german-REQUEST@lists.debian.org
> mit dem Subject "unsubscribe". Probleme? Mail an listmaster@lists.debian.org (engl)
> Archive: [🔎] 4FE5EA31.1090106@ft-c.de">http://lists.debian.org/[🔎] 4FE5EA31.1090106@ft-c.de
> 
> 


Reply to: