Linux.FTP-Sync
Dateiformat auf dem FTP-Server
Dateiname
TTMMJJ_NNNN.CSV
Spalteninhalte
Ich stimme hiermit zu, dass im Echtbetrieb die Spaltenüberschriften in der CSV weggelassen werden dürfen. Mindestanforderung ist dann jedoch eine neue Spalte (Spalte 1) in der die Format-Revisions-Nummer steht (in diesem Fall die "R1.000"). So können wir im laufenden Produktiv-Betrieb gleitend von einem Format auf ein anderes übergehen. Andernfalls sehe ich Probleme.
mein Angebot ist auch in der Anlage.
crontab
*/5 * * * * fils-ftp /home/fils-ftp/ftp-sync.sh
ftp-sync.sh
#!/bin/bash
syslog "FTP-Sync running"
php /home/fils-ftp/ftp-sync.php5
ftp-sync.php5
FTP-Funktions Referenz: http://de3.php.net/manual/de/ref.ftp.php
1) Login in den FTP Server
2) Auflisten aller Dateien *.csv in eine Variable
3) Durchlaufen der Variable und im Falle das die Datei älter als 3 Sekunden ist:
a) Grösse der Datei bestimmen
b) Datei downloaden
c) Grösse der Datei im lokalen Filesystem bestimmen
d) Wenn a=c die Datei auf dem FTP-server löschen
Übernahme in die Datenbank
wird vom OrgaMon übernommen! im Autostart-Moment werden Verzeichnis-Inhalte des FTP-down-Sync abgesaugt und in das JJJ-MM-TT Verzeichnis verschoben, dabei ist das innere Datum aus der Datei zu nehmen. Der CALIBRATIONID ist nach folgender Regel zu berechnen: