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

Batch FTP, Verarbeitungsfehler durch FTP-Server

Frage Entwicklung Batch & Shell

Mitglied: mybusiness1987

mybusiness1987 (Level 1) - Jetzt verbinden

02.08.2012, aktualisiert 10:58 Uhr, 2964 Aufrufe, 5 Kommentare

Hallo, habe folgendes Codestück...

for /f "tokens=4*" %%i in (%LASTLW%\FTP-Sync\doku.log) do (if not exist "%LASTLW%\ebt\doku\%%i %%j" echo del %%i %%j>>ftp.txt)

...das mir eine LOG-Datei (dir-Ausgabe von einem FTP Verzeichnis) mit einem Verzeichnis abgleicht. Wenn im Verzeichnis nicht die passende Datei zum String in der LOG gefunden wurde, wird ein delete-Befehl zusammen mit dem String aus der LOG ausgegeben um die Datei, die auf dem FTP existiert, aber im lokalen Verzeichnis nicht existiert, geöscht wird.

Hier ein Beispiel der Ausgabe:

del KR 11-034-1 (Btw. S12345 Test).doc

Der Befehl wird an den FTP übermittelt, aber leider verarbeitet der FTP diesen anscheinend nicht, da die Dateien leider nicht gelöscht werden.

Ich vermute, dass es an den Leerzeichen im Dateinamen liegt, denn wenn ich das ganze manuell abändere (den Dateinamen in Anführungszeichen setze), also so...

del "KR 11-034-1 (Btw. S12345 Test).doc"

... dann verarbeitet der FTP das ganze auch ohne Probleme und löscht die Datei.

Meine Frage ist nun, wie ändere ich das Codestück oben um, dass er mir die Ausgabe genau so (Dateiname in Anführungszeichen) ausgibt?

Habe verucht die Variablen in der Ausgabe in Anführungszeichen zu setzen,...

for /f "tokens=4*" %%i in (%LASTLW%\FTP-Sync\doku.log) do (if not exist "%LASTLW%\ebt\doku\%%i %%j" echo del "%%i %%j">>ftp.txt)

...aber so erfolgt dann garkeine Ausgabe.

Hoffe mir kann jemand helfen, danke schon mal.

Gruß Armin
Mitglied: bytecounter
02.08.2012 um 16:37 Uhr
Hallo Armin,

Du könntest mal versuchen, die Anführungszeichen zu entwerten:
echo del ^"%%i %%j^">>ftp.txt

vg
Bytecounter
Bitte warten ..
Mitglied: bastla
02.08.2012 um 17:22 Uhr
Hallo mybusiness1987!

Abgesehen davon, dass die zuletzt gezeigte Schreibweise eigentlich funktionieren sollte, könntest du auch den gesamten Dateinamen am Stück bekommen:
for /f "tokens=3*" %%i in (%LASTLW%\FTP-Sync\doku.log) do if not exist "%LASTLW%\ebt\doku\%%j" echo del "%%j">>ftp.txt
Grüße
bastla

P.S.: "Code"-Formatierung ist gar nicht so schwer (und lässt sich auch nachträglich noch hinzufügen ) ...
Bitte warten ..
Mitglied: mybusiness1987
06.08.2012, aktualisiert um 14:35 Uhr
Vielen Dank euch beiden. Habe deine Lösung genommen bastla. Es funktioniert wunderbar, aber irgendwie fehlt mir da das verständnis!?

Der Eintrag in der dir-Ausgabe bzw. LOG sieht ja folgendermaßen aus:

08-01-12 05:33PM 65024 KR 11-034-1 (Btw. S12345 Test).doc

Erster token wäre doch = 08-01-12
Zweiter Token = 05:33PM
Dritter = 65024

erst der vierte und alle weiteren wären doch der Dateiname!? Deswegen hatte ich bei mir auch 4* und nicht 3*

Anscheinend verstehe ich das irgendwie falsch!? Könntest du mir das bitte kurz etwas genauer erläutern?
Bitte warten ..
Mitglied: bastla
06.08.2012 um 15:01 Uhr
Hallo mybusiness1987!
erst der vierte und alle weiteren wären doch der Dateiname!?
Yep - deswegen auch die Anforderung "Token 3 und den Rest am Stück", wobei Token 3 als %%i geliefert wird und der Rest daher als %%j - das wird dann letztlich auch für das Löschen verwendet ...

Grüße
bastla
Bitte warten ..
Mitglied: mybusiness1987
06.08.2012 um 15:21 Uhr
Alles klar, vielen Dank

Grüße
Armin
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Per Batch FTP-Server Dateien ändern (1)

Frage von Marlon1 zum Thema Batch & Shell ...

Linux Tools
CURL mehrere Dateien vom ftp-Server herunterladen (10)

Frage von highpriest zum Thema Linux Tools ...

Netzwerkmanagement
Zugriff auf FTP-Server durch Chrome in Windows 7 klappt nicht (3)

Frage von emilien2 zum Thema Netzwerkmanagement ...

Firewall
gelöst Zwei FTP-Server hinter einer UTM 9 Software Appliance (10)

Frage von iGordon zum Thema Firewall ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...