Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Dateien auf FTP-Server zählen und gezielt herunterladen

Frage Entwicklung Batch & Shell

Mitglied: Barbrady

Barbrady (Level 1) - Jetzt verbinden

05.10.2010, aktualisiert 10:27 Uhr, 5496 Aufrufe, 4 Kommentare

Guten Morgen,

ich wurde in unserer Firma leider Gottes mit der Erstellung einer Batch-Datei beauftragt.
Gottlob bin ich diesbezüglich aber sehr, sehr wenig bewandert....

Die Batch-Datei soll:

- auf einen FTP Server zugreifen
- prüfen welche Dateien in dem bestimmten Ordner vorhanden sind
- diese Dateien in eine Textdatei schreiben
- jede Datei einzeln heruntergeladen werden
- die heruntergeladenen Dateien mit denen in der Textdatei vergleich ob vollständig übertragen wurde
- melden falls alles geklappt hatt bzw. eine Fehlermeldung angeben welche Datei fehlerhaft oder gar nicht übertragen wurde


Ich habe mit meinen bescheidenen Batchkenntnissen und ein bisschen Hilfe aus dem Internet ein bisschen probiert, komme aber nicht sehr weit:


@echo on
ftp open [Servername]
[Username]
[Passwort]
cd [Verzeichnisname]

mls * C:\Temp\Inhalt2.txt

set file=C\temp\Inhalt2.txt
for /F "delims=" %%i in (%file%) do (

echo "ftp mget %%i" >> ftp_controlfile.ftp
ftp mget %%i
)

ftp C:\Temp\ftp_controlfile.ftp
dir >> ergebnis.txt
Vergleiche Inhalt2.txt mit ergebnis.txt

IF "Inhalt2.txt" == "Ergebnis.txt" goto Antr else goto Antf

:Antr
Echo Die Liste der Dateien vom FTP-Server und die der Uebertragenen ist identisch
goto Ende
:Antf
Echo ?????
goto Ende

:Ende
bye


Meine Probleme liegen darin, das ich nicht weiß wie ich die Dateien alle einzeln herunterladen und kontrollieren kann, welche Datei evtl. fehlerhaft übertragen wurde und wie ich diese "Fehlermeldung" ausgeben kann.



Danke im Voraus und einen schönen Tag noch,

Grüße Barbrady
Mitglied: Snowman25
05.10.2010 um 10:41 Uhr
Zitat von Barbrady:
Guten Morgen,

Guten Morgen Barbrady,

ich wurde in unserer Firma leider Gottes mit der Erstellung einer Batch-Datei beauftragt.
Gottlob bin ich diesbezüglich aber sehr, sehr wenig bewandert....

Warum machen die Leute soetwas? Wieso werden immer wieder Menschen mit einer Aufgabe beauftragt, mit deren Materie sie sich nicht auskennen? Ich werde es wohl nie verstehen...

Die Batch-Datei soll:

- auf einen FTP Server zugreifen
- prüfen welche Dateien in dem bestimmten Ordner vorhanden sind
- diese Dateien in eine Textdatei schreiben
- jede Datei einzeln heruntergeladen werden
- die heruntergeladenen Dateien mit denen in der Textdatei vergleich ob vollständig übertragen wurde
- melden falls alles geklappt hatt bzw. eine Fehlermeldung angeben welche Datei fehlerhaft oder gar nicht übertragen wurde

Dabei gibt es 1 großes Problem: Batch und FTP passen nicht gut zusammen und mögen sich nicht wirklich.
01.
@echo on 
02.
ftp open [Servername] 
03.
[Username] 
04.
[Passwort] 
05.
cd [Verzeichnisname] 
06.
 
07.
mls * C:\Temp\Inhalt2.txt 
08.
 
09.
set file=C\temp\Inhalt2.txt 
10.
for /F "delims=" %%i in (%file%) do ( 
11.
 
12.
echo "ftp mget %%i" >> ftp_controlfile.ftp 
13.
ftp mget %%i 
14.
15.
 
16.
ftp C:\Temp\ftp_controlfile.ftp 
17.
dir >> ergebnis.txt 
18.
Vergleiche Inhalt2.txt mit ergebnis.txt 
19.
 
20.
IF "Inhalt2.txt" == "Ergebnis.txt" goto Antr else goto Antf 
21.
 
22.
:Antr 
23.
Echo Die Liste der Dateien vom FTP-Server und die der Uebertragenen ist identisch 
24.
goto Ende 
25.
:Antf 
26.
Echo ????? 
27.
goto Ende 
28.
 
29.
:Ende 
30.
bye
Das wird so nix. Du kannst
  1. keine FTP- und Batchbefehle mischen
  2. FTP nicht über Batch steuern
  3. werden deine beiden DIR-Ausgaben nie gleich sein.

Meine Probleme liegen darin, das ich nicht weiß wie ich die Dateien alle einzeln herunterladen und kontrollieren kann,
welche Datei evtl. fehlerhaft übertragen wurde und wie ich diese "Fehlermeldung" ausgeben kann.

Das macht der FTP dann sowieso automatisch, die Fehlerausgabe. Du musst viel eher darauf achten, dass du im richtigen Transfermodus bist (Binary / ASCII).
Einfach ein pause ans Ende stellen, sodass man Fehlermeldungen lesen kann.

Danke im Voraus und einen schönen Tag noch,

Sag deinem Auftraggeber lieber, dass das mit Batch nicht bzw. nur sehr schwer geht. Viele Programme mit FTP-Möglichkeit haben die Option, Verzeichnisse zu Synchronisieren. Diese achten auch auf den richtigen Transfertyp und laden fehlerhafte Dateien erneut. Kannst ja z.B. den Total Commander verwenden.

Grüße Barbrady

Gruß
Snow
Bitte warten ..
Mitglied: 60730
05.10.2010 um 18:27 Uhr
moin,

die Frage ist doch bedeutet Batch==Boardmittel oder darfst du freie 3rd Party Tools nehmen?

  • Wget sollte die eleganteste Lösung bieten.
  • FTP Batch sollte dir soviele Treffer liefern, dass sich das zerpflücken deiner einzelnen Zeilen nicht lohnt.

@snow: Grundsätzlich Jein Wer nix neues machen muß - lernt nix (und deshalb lass ich den Lernerfolg mal beim TO und kritzel nix für Frau Copy und Herrn Paste)
Dabei gibt es 1 großes Problem:
Nöö, die beiden passen schon zusammen...

Gruß
Bitte warten ..
Mitglied: Barbrady
06.10.2010 um 08:22 Uhr
Guten Morgen,

Zitat von Snowman25:
> Zitat von Barbrady:
> ich wurde in unserer Firma leider Gottes mit der Erstellung einer Batch-Datei beauftragt.
> Gottlob bin ich diesbezüglich aber sehr, sehr wenig bewandert....

Warum machen die Leute soetwas? Wieso werden immer wieder Menschen mit einer Aufgabe beauftragt, mit deren Materie sie sich nicht
auskennen? Ich werde es wohl nie verstehen...

Weil sie es toll finden kleine Mitarbeiter zu quälen ? Wer weiß ...

Aber wir kennen doch alle das Sprichwort:
Wessen Brot ich ess, dessen Lied ich sing ;)

Es soll unbedingt in Batch geschrieben werden (über Gründe etc. werde ich an dieser Stelle nicht reden)

Aber ich habe gestern schon ein paar Fortschritte gemacht, mal sehen ob ich es doch noch schaffe.
Bin im Moment dabei die letzten beiden Aufgaben der Batch zu "erdichten".

Mit freundlichen Grüßen

EDIT:

So, der FTP Teil der Batch hatt sich erledigt, ich habe es geschafft das die Batch die Dateien ausliest, die Dateinnamen in eine .txt speichert und danach die Dateien nacheinander runterläd...
Jetzt muss nur noch Abgeglichen und ausgegeben werden ob die Daten übereinstimmen...
Bitte warten ..
Mitglied: 60730
06.10.2010 um 16:09 Uhr
Moin,

Es soll unbedingt in Batch geschrieben werden
Wget ist ein Komadozeilenwerkzeug, das ganz harte auch so benutzen, weicheier wie ich aber innerhalb einer Batch.

Aber ich habe gestern schon ein paar Fortschritte gemacht, mal sehen ob ich es doch noch schaffe.
Bin im Moment dabei die letzten beiden Aufgaben der Batch zu "erdichten".

Du hättest nur auf den blauen Text klickern müssen, das Rad haben wir schon erfunden und verdichtet.
Bitte warten ..
Ähnliche Inhalte
Linux Tools
CURL mehrere Dateien vom ftp-Server herunterladen
Frage von highpriestLinux Tools10 Kommentare

Hallo Experten, ich suche schon lange nach einer Lösung um mit "curl" mehrere Dateien von einem ftp-Server downloaden. Befor ...

Microsoft Office
Dateien mit dem aktuellen Datum Zählen
gelöst Frage von OlliMucMicrosoft Office3 Kommentare

Servus zusammen, ich hoffe sehr, dass mir mal wieder jemand helfen kann. Ich arbeite mit einem VBA-Makro bzw einer ...

Windows Netzwerk
Gezielt nach MAC-Adresse im DHCP suchen
gelöst Frage von BuffedITHeadWindows Netzwerk10 Kommentare

Vorab hallo erstmal Community, ich bin neu hier im Forum. Ich habe unter den original Thread gepostet, allerdings ist ...

Linux
Stündlich entfernte Datei herunterladen und erneut hochladen
Frage von PhilosophLinux9 Kommentare

Hallo alle zusammen! Ich möchte automatisiert (alle 59 Minuten) eine Datei von einem FTP-Server herunterladen und diese auf einen ...

Neue Wissensbeiträge
Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 20 MinutenSicherheit

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 107 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 2 TagenInternet5 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell20 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless10 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Router & Routing
Wieso kann ich den UPD 7000-9000 nicht freigeben?
Frage von Jayk0bRouter & Routing8 Kommentare

Router: Telekom W 723V Ports: UDP 7000-9000 Können nicht frei gegeben werden. Benutzgrund: Rocket League 7000 – 9000 UDP ...

Router & Routing
Fritzbox Gastnetz - exposed Host - zur Sophos IPTV
Frage von medikopterRouter & Routing8 Kommentare

Hallo zusammen, ich habe eine Frage bezüglich des Fritz box Gastzugangs an einer Sophos UTM Home. An liebsten wäre ...