Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

FTP-Meldungen mittels Batch-File in Windows XP Prof. auswerten

Frage Entwicklung Batch & Shell

Mitglied: xperianer

xperianer (Level 1) - Jetzt verbinden

31.07.2009, aktualisiert 12:30 Uhr, 6663 Aufrufe, 8 Kommentare

Ich glaube, dass alle Programmierer an 2 entscheidenden Fehlern leiden
1. Ich bin dem Fehler auf der Spur
2. Das war der letzte Fehler
Quelle: unbekannt - ist aber definitiv nicht von mir aber enthält echt die Wahrheit

Um den täglichen Datenaustausch mit unserem Außendienst so einfach wie möglich zu machen, habe ich das alles mit Batch-Files organisiert. Jetzt braucht jeder nur noch eine der Aufgaben entsprechende Taste tippen und es geht los. Wir nutzen eine feste IP.

01.
              set ftp-extern=217.xx.xx.xx 
02.
              set ftp-intern=192.168.0.1 
03.
              set base=\batch              
04.
	 set cmdf=%systemdrive%%base%\cmd_ftp


Eine bestehnde Datei auf dem FTP-Server darf nicht überschrieben werden also versuche ich diese Datei per FTP zu holen
01.
	REM export.rar vom Server holen 
02.
	ftp -v -s:%cmdf%\get_belege.ftp %ftp-server% 


Auszug2: get_belege.ftp
01.
            benutzername 
02.
            ftp-passwort 
03.
04.
            get export.rar 
05.
            quit


Das funktioniert auch alles wunderbar. Aber jetzt kommt ein Problem, zu dem ich bisher noch keine Lösung gefunden habe. Unser FTP-Server ist aber nicht da und ein Prüfen und Auswerten des Ping auf 217.xxx.xxx.xxx zeigt immer online an, da der FTP-Server ja eine andere IP hat. Folgende Meldung wird ausgegeben:

01.
> FTP : connect : Unbekannte Fehlernummer
Wie kann ich jetzt im Batch-File darauf mit einem GOTO reagieren ?
Mitglied: 60730
31.07.2009 um 12:46 Uhr
Ich glaube, dass alle Programmierer an 2 entscheidenden Fehlern leiden

ist ja eigentlich eher keine Begrüßung, schon gar nicht am Admin Day...

set ftp-extern=217.xx.xx.xx
set ftp-intern =192.168.0.1
...und
ftp -v -s:%cmdf%\get_belege.ftp %ftp-server%
passen in meinen Augen zwar nicht zusammen, aber auch das sei mal nur erwähnt und nicht weiter drauf eingegangen.

Wie kann ich jetzt im Batch-File darauf mit einem GOTO reagieren ?
"Dein" goto finde ich zwar nicht, aber mittels loggen und goto ginge es.

ftp -v -s:%cmdf%\get_belege.ftp %ftp-server% >meinftp.log
find "Unbekannte Fehlernummer" meinftp.log && goto error || goto weiter

Gruß
Bitte warten ..
Mitglied: LotPings
31.07.2009 um 12:51 Uhr
Zitat von xperianer:

Wie kann ich jetzt im Batch-File darauf mit einem GOTO reagieren ?

In dem du die Meldungen auswertest, z. Bsp. (ungetestet)
01.
For /f "delims=" %%A in ( 
02.
	'ftp -v -s:%cmdf%\get_belege.ftp %ftp-server% 2^>^&1' 
03.
) do If "%%A" EQU "FTP : connect : Unbekannte Fehlernummer" set "Err=%%A"
Gruß
LotPings
Bitte warten ..
Mitglied: LittleFlame
31.07.2009 um 14:52 Uhr
Ich weiss, es is unhöflich dazwischenzuquatschen, aber da ich immer fleissig mitlese und so versuche was zu lernen, hab ich ne kurze Frage:
In der Zeile

'ftp -v -s:%cmdf%\get_belege.ftp %ftp-server% 2^>^&1'

was bewirkt hier das

2^>^&1


Vielen Dank und schönen Admin-Day noch an alle

LittleFlame
Bitte warten ..
Mitglied: LotPings
31.07.2009 um 15:07 Uhr
For /f führt den Befehl zwischen den ' ' Zeichen in einer sekundären Cmd Shell aus. Damit die Umleitung der Fehlerausgabe in die normale Ausgabe "2>&1" nicht von der ersten Shell interpretiert wird, müssen die Zeichen > und & jeweils mit einem ^ escaped werden.

Gruß
LotPings
Bitte warten ..
Mitglied: xperianer
03.08.2009 um 10:44 Uhr
Ich habe nicht vergessen, mich zu bedanken, sondern komme erst heute dazu alle Hilfen zu lesen und weiterzuarbeiten.
Herzlichen Dank für die Hilfen.

Nur - funktioniert leider keiner Eurer Vorschläge.
Die Bildschirmausgabe
01.
 > FTP : connect : Unbekannte Fehlernummer 
wird nicht so übergeben. in der Datei "meinftp.log" steht nämlich folgendes drin

01.
ftp> Ungültiger Befehl 
02.
ftp> benutzername 
03.
Ungültiger Befehl 
04.
ftp> passwort 
05.
Ungültiger Befehl 
06.
07.
08.
quit
quit ist das einzige Kommando, welches fehlerfrei ausgeführt wird. Diese Meldung "Ungültiger Befehl" kann aber ganz viel bedeuten und nicht den Fehler, daß der FTP-Server nicht da ist und genau das will ich ja abfangen.

Hat eventuell noch jemand eine Idee?
Bitte warten ..
Mitglied: Biber
12.08.2009 um 16:54 Uhr
Moin xperianer,

hat sich denn am Status dieses Beitrags etwas geändert?
ist es gelöst, erledigt, offen oder inzwischen gegenstandslos?

Bitte gib doch mal Feedback, erst recht, wenn es noch nicht funktioniert.

Grüße
Biber
Bitte warten ..
Mitglied: 60730
13.08.2009 um 10:33 Uhr
Zitat von Biber:
Moin xperianer,

hat sich denn am Status dieses Beitrags etwas geändert?
ist es gelöst, erledigt, offen oder inzwischen gegenstandslos?

Bitte gib doch mal Feedback, erst recht, wenn es noch nicht
funktioniert.

Moin,

die gleiche Frage auch von mir, denn anders - als von xperianer vermutet - handelt es sich bei "meinem" "Vorschlag" nicht nur um eine Idee - die den Status ungestetet hat, sondern um einen Schnippsel, der sich seit mehr als einem Jahrzehnt im täglichen Einsatz bewiesen hat.

Der Grund für das "Feedback"
Ungültiger Befehl ist wohl eher in einer "vermurksten" Steuerdatei zu suchen.

FTP
Admin
bringt denn auch Ungültiger Befehl - denn Admin wäre genau das - kein gültiger Befehl (und in meinem Fall auch kein gültiger Anmeldename).

Von daher einfach mal genau die Schritte, die die Batch durchlaufen soll per Hand durchspielen und oder mal nach FTP Batch Script hier suchen, dort finden sich auch genügend gelöste Threads mit identischem Inhalt.

Gruß
Bitte warten ..
Mitglied: xperianer
13.08.2009 um 18:34 Uhr
Danke für Eure Hinweise und Vorschläge. So langsam fängt das ganze auch an zu funktionieren. Es waren mehr als nur diese 1 Fehlermeldung vom FTP, die behandelt werden mußten.

Fehler waren u.a. daß
- Daten gesendet werden sollten aber keine Verbindung zum WWW aufgebaut wurde (Codeschnipsel dazu hier gefunden) oder
- Kollegen im Netzwerk der Firma waren und trotzdem eine externe Verbindung aufbauen wollten. (Fehlermeldung ungültiger Befehl)
und .....

ich nutze den Schnipsel von TimoBeil
01.
ftp -v -s:%cmdf%\get_belege.ftp %ftp-server% >meinftp.log 
02.
find "xxxxxxxxxxxxxxx" meinftp.log && goto error || goto weiter
und habe jetzt mehrere Zeilen
01.
find "xxxxxxxxxxxxxxx" meinftp.log && goto error || goto weiter
in der BatchDatei.

Danke allen, die mir geholfen haben.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 10
gelöst RDP Verbindung zu Windows 10 Prof. mit Zertifikat sichern (2)

Frage von Windows11 zum Thema Windows 10 ...

Windows XP
gelöst WPA2 unter Windows XP SP1 nutzen? (10)

Frage von bestelitt zum Thema Windows XP ...

Windows XP
Kann man noch neue Notebooks für Windows XP kaufen ? (9)

Frage von DieterJansen zum Thema Windows XP ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...