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

Dateien per Batch vom FTP löschen?

Frage Entwicklung Batch & Shell

Mitglied: Reisszahn2009

Reisszahn2009 (Level 1) - Jetzt verbinden

18.10.2009 um 14:35 Uhr, 10250 Aufrufe, 3 Kommentare

Hi zusammen,
ich habe ein kleines Problem mit dem automatischen Löschen von FTP-Dateien.
Vielleicht kann mir einer von euch helfen?

01.
@echo off 
02.
 
03.
rem Parameter einlesen 
04.
set ftpuser=%1 
05.
set ftppass=%2 
06.
set ftpip=%3 
07.
set ftplog=%4 
08.
set ftplimit=%5 
09.
 
10.
rem Uebertragungsdatei bauen, um Dateiliste zu holen 
11.
echo user %ftpuser%> ftpcmd.dat 
12.
echo %ftppass%>> ftpcmd.dat 
13.
echo ls>> ftpcmd.dat 
14.
echo quit>> ftpcmd.dat 
15.
 
16.
ftp -n -s:ftpcmd.dat %ftpip% 1>%ftplog% 2>>&1 
17.
 
18.
rem Uebertragungsdatei2 bauen, um Dateien zu löschen 
19.
echo user %ftpuser%> ftpcmd2.dat 
20.
echo %ftppass%>> ftpcmd2.dat 
21.
 
22.
FOR /F "skip=%ftplimit%" %%d IN ('find /i "Backup" %ftplog%') DO ( 
23.
  echo delete %%d>>ftpcmd2.dat 
24.
  echo %%d geloescht! 
25.
26.
 
27.
echo quit>> ftpcmd2.dat 
28.
 
29.
ftp -n -s:ftpcmd2.dat %ftpip% 1>%ftplog% 2>>&1 
30.
 
31.
del %ftplog% 
32.
del ftpcmd.dat 
33.
del ftpcmd2.dat 
34.
 
35.
pause 
36.
 
37.
:end
Wie man sieht bekommt das Script ein paar Parameter übergeben. Das funktioniert auch alles. Das Problem ist die FOR-Schleife. Der "find /i"-Befehl hängt an jede gefundene "Backup-Datei" einen Zeilenumbruch. Dies kann man z.B. mit dem Notepad++ sehen (mit dem Windows-Notepad nicht). Wenn man diese Datei jetzt an den FTP übergibt meldet dieser, "Datei nicht gefunden" -> Eben aufgrund des Zeilenumbruch-Zeichens...
Hat einer eine Idee wie ich das Zeichen entfernen kann? Oder Alternativ, wie man das Script so umbauen kann, das es auf einem FTP 10 Dateien abzählt und ab der 11. löscht?

Vielen Dank

Gruß Reisszahn
Mitglied: 60730
18.10.2009 um 16:23 Uhr
Servus,

mangels Winblows @Home - kann ich nur einen ungetesteten Tipp abgeben.

Zeile 28: type ftpcmd2.dat ftp_cmd2.dat
29.ftp -n -s:ftp_cmd2.dat %ftpip% 1>%ftplog% 2>>&1

Probiers mal aus - wie geschrieben ungetestet.

Gruß
Bitte warten ..
Mitglied: Reisszahn2009
18.10.2009 um 16:53 Uhr
Leider nein. Was soll der Type-Befehl bringen?
Auch wenn man die Ausgabe mit ">" übergibt, bringt es nichts
Bitte warten ..
Mitglied: Reisszahn2009
23.10.2009 um 08:29 Uhr
Realisiert mit einem Tool namens "rpl" (http://sourceforge.net/projects/gnuwin32/files/rpl/1.4.1-1)

01.
rem Teil III.I - Mit Kommando "rpl" die CR-Zeichen am Ende entfernen 
02.
rem -------------------------------------------------- 
03.
for /f "delims== tokens=1,2" %%i in ('findstr "toolsdir" config.ini') do @set toolsdir=%%j 
04.
%toolsdir%\rpl\bin\rpl.exe -q -e "\r" "" ftpcmd2.dat 1>nul 2>>&1
Bitte warten ..
Ähnliche Inhalte
Linux Tools
CURL mehrere Dateien vom ftp-Server herunterladen (10)

Frage von highpriest zum Thema Linux Tools ...

Batch & Shell
gelöst Batch Datei: PDF Dateien verschieben, umbenennen und löschen (4)

Frage von F0rcehunter zum Thema Batch & Shell ...

Batch & Shell
Batch mit forfiles - Dateiendung filtern - Dateien löschen (2)

Frage von mschaedler1982 zum Thema Batch & Shell ...

Batch & Shell
gelöst älteste dateien via batch löschen (6)

Frage von cali169 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Windows Server

Exchange 2010 Active Directory und Windows Server 2016

(4)

Erfahrungsbericht von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (33)

Frage von sabines zum Thema Internet ...

Netzwerke
Wie erstelle ich ein Intranet (19)

Frage von Leonardnet zum Thema Netzwerke ...

LAN, WAN, Wireless
gelöst Eintägige Netzwerkunterbrechung trotz Backupleitung (15)

Frage von iAmbricksta zum Thema LAN, WAN, Wireless ...

Netzwerke
VPN-Server einrichten PPTPD-Einrichtung gescheitert (14)

Frage von MIlexx zum Thema Netzwerke ...