suelfeld
Goto Top

BATCH lokales Verzeichnis mit Webverzeichnis vergleichen, uploads UND deletes generieren

Aufgabe hier:
Lokales+Webverzeichnis fehlende Dateien mit FTP Upload und Dateien die nicht mehr auf lokal sind im Web löschen.
Hintergrund:
Es geht um eine ganz spezielle Datensicherung (Lokales und ein Webverzeichnis identisch halten).
Vorgabe: Automatisch(Task), es werden lokal Images und Dokumente erstellt gezippt und in 2GB Scheiben zerteilt.

Nachfolgende BATCH läuft, es fehlt aber:
1. Anweisung zum löschen so was wie FTP_Deletes.txt
2. Der Vergleich müsste auf Namen, Tagesdatum(ohne Uhrzeit!) sein oder besser binär da es sich um 2GB Happen von ZIP Archiven sind.
Im Augenblik wird nur auf Namen geprüft.
3. Nicht schlecht wäre auch wenn das Arbeitsverzeichnis C:\ auf dem variablen Programmpfad liegen könnte.

Vorab, Programmpfad, Startverzeichnis im Beispiel:
P:\Dateimanagement-DOS-WIN\DOS-Dateimanagement\issFTP\

Verzeichnis Lokal:
C:kunden

Web Verzeichnis:
99.999.999.999 httpdocs\kunden\FTPDatsi\PHYSIO\*.*

START.bat
REM überflüssig zur Info
del C:\FTP_aufServer.txt
del C:\FTP_Uploads.txt
del C:\FTP_Deletes.txt
del C:\FTP_Vorhanden.txt

ftp -s:ftpopenR.src
die includierte ftpopenR.src
open 99.999.999.999
benutzer
kennwort

cd httpdocs
cd kunden
cd FTPDatsi
cd PHYSIO

lcd P:\Dateimanagement-DOS-WIN\DOS-Dateimanagement\issFTP\
dir /httpdocs/kunden/FTPDatsi/PHYSIO FTP_aufServer.txt
disconnect 99.999.999.999
bye

Produkt bisher OK ---------------------------------------------FTP_aufServer.txt:

drwxr-xr-x 2 iss24-ftp psacln 6 May 19 13:58 Ablage
-rw-r--r-- 1 iss24-ftp psacln 174 May 19 17:18 FTP_Uploads.txt
drwxr-xr-x 2 iss24-ftp psacln 4096 May 19 13:55 Images
-rw-r--r-- 1 iss24-ftp psacln 738 May 19 17:18 index_xyz.html
-rw-r--r-- 1 iss24-ftp psacln 16 May 19 13:55 testdatei
-rw-r--r-- 1 iss24-ftp psacln 738 May 19 13:58 testdatei2

weiter in der BATCH:

echo open 99.999.999.999>>C:\FTP_Uploads.txt
echo benutzer>>C:\FTP_Uploads.txt
echo kennwort>>C:\FTP_Uploads.txt

echo cd httpdocs>>C:\FTP_Uploads.txt
echo cd kunden>>C:\FTP_Uploads.txt
echo cd FTPDatsi>>C:\FTP_Uploads.txt
echo cd PHYSIO>>C:\FTP_Uploads.txt

REM das müsste umgestrickt werden, bin ich zu doof dazu:
for /f "tokens=2 delims=:." %%i in ('chcp') do set "CP=%%i"
chcp 1252
FOR /F "delims=" %%i in ('dir /b "C:\kunden\*.*"') do FINDSTR /e /c:"%%~nxi" C:\FTP_aufServer.txt && echo REM OK "%%~nxi" >>FTP_Vorhanden.txt
REM FOR /F "delims=" %%i in ('dir /b "C:\kunden\*.*"') do FINDSTR /e /c:"%%~nxi" C:\FTP_aufServer.txt && echo REM OK "%%~nxi" >>FTP_Deletes.txt ??
chcp %CP%

REM FTP Copy nach server = OK:
echo disconnect 99.999.999.999>>C:\FTP_Uploads.txt
echo bye>>C:\FTP_Uploads.txt
ftp -s:FTP_Uploads.txt

ENDE BATCH

Erzeugter script = OK, Beispiel FTP_Uploads.txt:
open 99.999.999.999
benutzer
kennwort
cd httpdocs
cd kunden
cd FTPDatsi
cd PHYSIO
put "c:\kunden\save-lokal"
disconnect 99.999.999.999
bye

Content-Key: 143230

Url: https://administrator.de/contentid/143230

Printed on: April 19, 2024 at 13:04 o'clock

Member: dave114
dave114 May 20, 2010 at 10:33:11 (UTC)
Goto Top
auch dir @suelfeld einen guten Morgen und willkommen im Forum,

Sonst noch was?

Auch dir noch einen schönen Tag.

mfg
David
Mitglied: 77559
77559 May 20, 2010 at 10:33:29 (UTC)
Goto Top
Hallo suelfeld,

ich wollte bei der fehlenden Begrüßung deinerseits schon fast (un-)willkommen im Forum schreiben, aber ich verkneife mir das halbwegs face-wink

Bevor ich mich mit deinem Batch beschäftige, solltest du
Bitte formatiere deinen Code zur besseren Les-/Referenzier-barkeit unbedingt mit den dafür vorgesehenen in der Formatierungshilfe
Und dies ist ein leider immer wieder benötigter Textbaustein, den jdeder der das Forum verfolgt schon mal gelesen hat.

Gruß
LotPings
Member: suelfeld
suelfeld May 20, 2010 at 11:43:05 (UTC)
Goto Top
Ja Grüß Gott Ihr Lieben,

habe ich glatt vergessen vor lauter aufbereiten des problems. Is auch meine erste Foren -Frage!
Werde mal schauen wie das mit den Codetags geht. Danke
Member: suelfeld
suelfeld May 20, 2010 at 11:49:39 (UTC)
Goto Top
habe ich doch glatt vergessen:

Schöne Grüsse noch an alle.

Die Bearbeiten Funktion habe ich jetzt auch schon gefunden, danke
Member: dave114
dave114 May 20, 2010 at 11:53:13 (UTC)
Goto Top
P.S. Eine Bearbeiten-Funktion von Beiträgen und Kommentaren gibt es auch face-wink
Member: suelfeld
suelfeld May 20, 2010 at 14:44:56 (UTC)
Goto Top
komm mit dem Aufbereiten noch nicht klar und bin im Stress, ich versuche es mal ganz kurz,

folgende Schleife listet die Dateien die nicht auf den Server liegen und abgeladen werden solten:

folgende Schleife listet die Dateien die auf den Server liegen:
FOR /F "delims=" %%i in ('dir /b "kunden\*.*"') do FINDSTR /e /c:"%%~nxi" FTP_aufServer.txt && echo ok "%%i">>FTP_Vorhanden.txt

wie muss die Schleife aussehen wenn sie mir die Dateien listen soll die auf dem Server da sind aber nicht auf Lokal?
??">>FTP_Deleten.txt

Vielen Dank im Voraus für eure Mühe mit mir.
Mitglied: 77559
77559 May 20, 2010 at 14:58:54 (UTC)
Goto Top
Tja suelfeld,
der wunsch nach eine vernünftigen Formatierung kommt nicht von ungefähr, deine obiges ftp-server Verzeichnis sieht in Fester Schriftbreite etwas unglücklich aus.
drwxr-xr-x 2 iss24-ftp psacln 6 May 19 13:58 Ablage
-rw-r--r-- 1 iss24-ftp psacln 174 May 19 17:18 FTP_Uploads.txt
drwxr-xr-x 2 iss24-ftp psacln 4096 May 19 13:55 Images
-rw-r--r-- 1 iss24-ftp psacln 738 May 19 17:18 index_xyz.html
-rw-r--r-- 1 iss24-ftp psacln 16 May 19 13:55 testdatei
-rw-r--r-- 1 iss24-ftp psacln 738 May 19 13:58 testdatei2
Wie sollen wir da jetzt erkennen können, ob die Anzahl der Elemente (tokens) in der Zeile konstant ist, oder ob die Position des Dateinamen in den Zeilen fix ist?
Denn diese Liste muss abgearbitet werden und pro Eintrag mit {If exist }} lokal abgefragt werden. Das geht alles aber die Rahmenbedingungen müssen stimmen

Gruß
Lotpings
Member: suelfeld
suelfeld May 20, 2010 at 15:53:41 (UTC)
Goto Top
habe auf Antworten geklickt, aber wie komme ich in den Formatierungsmodus (blauer Hintergrung)?
Mir Steuerzeichen wie in der Formatierungshilfe angegeben ? Button den ich nicht sehe? ?
Mitglied: 77559
77559 May 20, 2010 at 15:57:45 (UTC)
Goto Top
Ich glaube wir haben ein Verständigungsproblem,
klicke einfach mal im folgenden Absatz auf das Unterstrichene Codetags. Das ist der Link der dich direkt zur Erklärung führt.
Bitte formatiere deinen Code zur besseren Les-/Referenzier-barkeit unbedingt mit den dafür vorgesehenen in der Formatierungshilfe

Gruß
Lotpings