Auflistung Fehler

Status
Nicht offen für weitere Antworten.

delfin

Erfahrener Benutzer
#1
hallo zusammen
ich habe ein BAT/CMD geschrieben. Es funktioniert nicht so ganz wie ich mir dies vorstelle.


Verzeichnis auslesen:

Code:
REM Build transfer Template
echo open 127.0.0.1 > transfer.ftp
echo user >> transfer.ftp
echo password >> transfer.ftp
REM create root directory
echo mkdir test >> transfer.ftp
REM Build Directory Structure
for /f "tokens=1,2,3,4 delims=\" %%a in ('dir C:\test\transfer /ad /o /b /s') do @echo mkdir %%b\%%c\%%d >> transfer.ftp
REM create transfer list
for /f "tokens=1,2,3,4,5 delims=\" %%A in ('dir C:\test\transfer /a-d /o /b /s') do @echo send %%~pfB%%~pC%%C%%~pD%%D%%~pE%%E %%~B%%~pC%%C%%~pD%%D%%~pE%%E >> transfer.ftp
hier der erfolgreiche versuch:
echo quit >> transfer.ftp
echo by >> transfer.ftp

=====
Das Resultat dieser Datei siehst so aus:

open 127.0.0.1
user
password
mkdir test
mkdir test\transfer\test1
mkdir test\transfer\test2
send C:\test\test\test\transfer\test\test1\test\testdat ei.txt test\test\transfer\test\test1\test\testdatei.txt
send C:\test\test\test\transfer\test\test2\test\a.rtf test\test\transfer\test\test2\test\a.rtf
send C:\test\test\test\transfer\test\test2\test\hallo yves.wav test\test\transfer\test\test2\test\hallo yves.wav
send C:\test\test\test\transfer\test\test2\test\testdat ei1.wav test\test\transfer\test\test2\test\testdatei1.wav
quit
bye

=====
Es sollte aber so aussehen:

open 127.0.0.1
user
password
mkdir test
mkdir test\transfer\test1
mkdir test\transfer\test2
send C:\test\test1\testdatei.txt
send C:\test\transfer\test2\a.rtf
send C:\test\transfer\test2\hallo yves.wav
send C:\test\transfer\test2\testdatei1.wav
quit
by

=====
wo ist mein denkfehler, das er mir dies so komisch darstellt? Den so kann ich den Befehlt

ftp -s:xtrans.ftp


nicht ausführen, da er die dateien nicht findet wäre toll, wenns gehen würde
 

Sini

Administrator
#2
re

Hallo


Ich verstehe nicht ganz was du machen willst. Möchtest du Daten auf einem FTP Server laden? Und sollte nicht nach "dir" das Verzeichnis stehen wie C:?

Bitte um mehr INFOS was du genau machen willst.


MFG:pennywise
 

delfin

Erfahrener Benutzer
#3
was ich machen ist:

ich habe ein verzeichnis, wo meine einige dateien darin sind, welche ich mittels batch gerne auf einen ftp hochladen will.
den batch würde ich dann in den "geplanten Task" ablegen. so das dieser dan zu gewissen zeiten die transferiert.

der batsch sollte dies machen.

Verzeichnisstrucktur auslesen (mkdir)
danach
Auslesen der einzelnen Verzeichnissen (dir)


so sollte es dann aussehen.

mkdir test
mkdir test\transfer\test1
mkdir test\transfer\test2
send C:\test\test1\testdatei.txt
send C:\test\transfer\test2\a.rtf
send C:\test\transfer\test2\hallo yves.wav
send C:\test\transfer\test2\testdatei1.wav
 

Xiaolong

Erfahrener Benutzer
#4
Kommen immer neue Verzeichnisse hinzu oder bleibt die Verzeichnisstruktur gleich?

Wenn sie gleich bleibt würd ich halt aufm FTP erstmal alle Verzeichnisse anlegen und dann per
cd verzeichnis/unterverzeichnis
mput *.*
alles uploaden. Für jedes Verzeichnis dann halt eine neue Zeile mit

Was anderes fällt mir im Moment nicht ein aber ich schau mir gleich ma deinen Code etwa näher an.

EDIT: Hab mir den Code ma angeschaut. Also ich erkenne da keinen Fehler, und vor allem seh ich nicht was die doppelten Einträge erstellt ?(?(
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Oben