automatisch Daten per FTP Server herunterladen

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Hallo zusammen,

ich lade täglich über einen FTP Server von verschiednen Lieferanten eine Lagerbestandsdatei herunter.
Dazu nutze ich das Programm FileZilla.
Kann ich dieses irgendwie automatisch einstellen, sodass die Datei beispielsweise alle 6 Stunden automatisch
heruntergeladen wird und somit aktualisiert wird?

Gruß Matthias
 

Kernelpanik

Herrenhut
Registriert
05.03.04
Beiträge
2.300
Zum guten Ton gehört hier, dass man die Systemdaten in der Signatur zeigt, so dass man nicht immer doof nachfragen muss.
 
  • Like
Reaktionen: dg2rbf

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Hallo,

die aktuelle Version auf meinen Mac ist BigSur

Grüße Matthias
 

dg2rbf

Blutapfel
Registriert
07.03.10
Beiträge
2.606
Hi,
diese Info ist nur die "halbe Miete", und auf welcher Hardware läuft BigSur ?.

Franz
 

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.541
AppleScript mit einem Anwenderprogramm ist dazu viel zu kompliziert. Dazu reicht ein einfaches Unix-Skript nach dem Muster

Code:
#!/bin/sh
while true
do
        /usr/bin/curl ftp://ftp.example.de/beispiel.txt -o /Users/Shared/beispiel.txt
        /bin/sleep 21600
done
 
  • Like
Reaktionen: dg2rbf und ottomane

ottomane

Golden Noble
Registriert
24.08.12
Beiträge
16.375
Oben steht doch eine gute Idee.

Sonst z.B.:


Nur am Rande: Reines FTP ist ein völlig unsicheres Protokoll. Man kann sogar das Passwort in Klartext bei der Übertragung mitlesen. Es gibt sichere Varianten FTPs / sFTP.
 
  • Like
Reaktionen: dg2rbf

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Code:
Code:
#!/bin/sh
while true
do
        /usr/bin/curl ftp://ftp.example.de/beispiel.txt -o /Users/Shared/beispiel.txt
        /bin/sleep 21600
done


Hallo, ich muss mal meine Frage wieder aufleben :eek:

Muss ich bei oben den Code nicht noch irgendwo mein Benutzernamen und Kennwort eingeben?
Sorry aber ich habe nicht alt so viel Ahnung mit Scripts.

Schöne Grüße
Matze
 

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
sorry, aber wie genaue müsste der komplette Code aussehen? Ich bekomme nämlich immer eine Fehlermeldung.
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.417
sorry, aber wie genaue müsste der komplette Code aussehen? Ich bekomme nämlich immer eine Fehlermeldung.

steht doch da. Aber ich nehme an, Du kennst Dich nicht so aus. Dann starte doch einfach mal damit, die genauere Fehlermeldung zu liefern und zu bestimmen, welche Art von FTP Du überhaupt brauchst - altes aktives FTP, altes passives FTP, FTPs mit Transportverschlüsselung oder SFTP, was SSH mit FTP ist.
Und USERNAME und PASSWORD hast Du angepasst mit Deinen konkreten Daten (und den Doppelpunkt dazwischen beachtet)?

Entschuldige, aber konkrete Infos braucht man für die Hilfe und Rückmeldung „geht nicht“ ist zu wenig.
 

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Hallo,

folgende Fehlermeldung habe ich erhalten:
Zeilenende, etc. erwartet, aber „while“ gefunden.
Folgendes Protokoll wird verwendet:
FTP - File Transfer Portocol

Den Doppelpunkt habe ich gesetzt. :eek:
 

Marcel Bresink

Hadelner Sommerprinz
Registriert
28.05.04
Beiträge
8.541
folgende Fehlermeldung habe ich erhalten:
Zeilenende, etc. erwartet, aber „while“ gefunden.

Das ist eine Fehlermeldung von AppleScript. Du solltest doch kein AppleScript verwenden, weil das viel zu kompliziert ist.

Was oben steht, ist ein UNIX-Skript. Du übertragst das in einem normalen Texteditor (z.B. TextEdit im Modus "Reiner Text") und speicherst das als Textdatei irgendwo ab, z.B. in die Datei beispiel.sh in Deinem Privatordner.

Dann kannst Du das Skript vom Terminal aus mit

sh beispiel.sh

starten.
 

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Ok jetzt habe ich es verstanden :eek:
Habe den Code jetzt über den Terminal gestartet.
Nun kommt aber folgende Fehlermeldung.



line 1: Code:: command not found


% Total % Received % Xferd Average Speed Time Time Time Current


Dload Upload Total Spent Left Speed


0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) Could not resolve host: ftp


(6) Could not resolve host: ftp
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.417
-Du hast die erste Zeile „Code:“ eingegeben. Das war aber nur eine Bestimmung des danach folgenden Beispiels.
-Du hast ftp.example.de eingegeben. Das musst Du natürlich auf Deinen konkreten Fall anpssen.
 

matthias321

Boskoop
Registriert
16.11.12
Beiträge
41
Hallo,
vielen Dank für deine Antwort. Ich hab alle nun dementsprechend umgeändert.
Allerdings kommt nun folgende Fehlermeldung:
curl: (67) Access denied: 530
Ok, habe einen anderen Server ausprobiert dort hat es nun geklappt, super
Der Fehler bei dem Server mit der Fehlermeldung curl: (67) Access denied: 530 scheint an dem Passwort zu liegen,
da dort Sonderzeichen vorhanden sind. Kann man dieses irgendwie umgehen?
Ach ja und noch eine Frage, wie kann ich den Code über dem Terminal automatisch ausführen lassen ohne das ich den Pfad jedesmal eingeben muss.
 
Zuletzt bearbeitet:

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.417
Der Fehler bei dem Server mit der Fehlermeldung curl: (67) Access denied: 530 scheint an dem Passwort zu liegen,
da dort Sonderzeichen vorhanden sind. Kann man dieses irgendwie umgehen?
erstens einmal heisst die Meldung nur, dass Du keinen Zugriff auf das hast, worauf Du da zugreifen wolltest. Kann an einem gescheiterten Login liegen aber auch, dass die Quelldatei nicht existiert für den User. Wenn Du glaubst, es liege an den Sonderzeichen, beachte Dein Tastaturlayout und dass in macOS dazu passend eingestellt ist.
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
21.417
Ach ja und noch eine Frage, wie kann ich den Code über dem Terminal automatisch ausführen lassen ohne das ich den Pfad jedesmal eingeben muss.

wenn die Datei immer dieselbe ist und es meinetwegen jeden Tag um dieselbe Zeit geladen werden soll, erstelle einen Cronjob.