while done und ein Counter
Hallo,
das nachstehende Skript soll Dateien - unter einem anderen Namen -
speichern so sie noch nicht vorhanden sind. Das klappt auch
hervorragend. Es soll aber auch noch die Anzahl der kopierten Dateien
ermittelt werden. Ist die Anzahl Null endet das Skript, anderenfalls
soll ein weiterer - hier nicht aufgeführter - Teil ausgeführt werden.
Leider funktioniert das Zählen nicht wie gewünscht:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
#!/bin/bash
###########################################################################
# Skript zum Kopieren der Tracks vom Server auf den Web-Server
###########################################################################
# Deklaration von Konstanten
Q_Pfad="/home/quelle"
Z_Pfad="/var/ziel"
Anzahl=0
# In der Quellpfad wechseln da sonst Problem mit find bestehen
cd "$Q_Pfad"
# Liste der GPX-Dateien erstellen und und abarbeiten
find -type f -name '????-??-??*.gpx' | while read Q_Datei; do
# prüfen ob Datei schon vorhanden
if [ ! -f "$Z_Datei" ]; then
.
.
.
#################################################
echo "1 Zwischensumme vor dem kopieren: $Anzahl"
#################################################
cp -u "$Q_Datei" "$Z_Datei"
Anzahl=$[Anzahl + 1]
#################################################
echo "2 Zwischensumme nach dem kopieren: $Anzahl"
echo ""
#################################################
fi
done
#################################################
echo "3 Anzahl der kopieren Dateien: $Anzahl"
#################################################
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Der Aufruf des Skriptes erzeugt folgende Ausgabe:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
root@10:23:57# /etc/cron.daily/gpxcopy
1 Zwischensumme vor dem kopieren: 0
2 Zwischensumme nach dem kopieren: 1
1 Zwischensumme vor dem kopieren: 1
2 Zwischensumme nach dem kopieren: 2
3 Anzahl der kopieren Dateien: 0
root@10:24:00#
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Mir ist unklar warum das korrekte Zählwerbgis die Schleife nicht "verlässt"!
Wer weiss Rat, Google jedenfalls nicht! Oder ich stelle die Frage falsch.
--
Gruß aus der Stadt der CeBIT
Jochen
Reply to: