Linux.FTP-Sync
Dateiformat auf dem FTP-Server
Dateiname
TTMMJJ_NNNN.CSV
Spalteninhalte
Beispieldatei
ACHTUNG: Die Zeile mit den Spaltenüberschriften werden im Echtbetrieb nicht erzeugt!
FormatRevision;Datum;Uhrzeit;Zaehlertyp;Pruefwerkzeug;Membranhersteller;Chargennummer;fortlNummer;Station_Pruefkammer;Kammer_Glocke;Messwert;Grenzwert;Pruefergebnis
R1.000;22.02.2006;12:34;ABCDEFGHIJKLMNOPQRST;1A2B3C4D5E6F7G8;UVWX;1234;9999;1;A;0.123456;0.120000;12
crontab
*/5 * * * * fils-ftp php /home/ftpheli/ftp_heli.php5
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: