Batchdatei

Hallo

Weiss einer wie ich in einer Batchdatei in der das Programm ftp.exe aufruft (mit wiederum einer Batchdatei) solange wartet bis die gestartet ftp.exe beendet wurde (fertig ist) und danach weiter den Batchbefehlen folgt?

Hintergrund:

Die erste Batch soll autom. gestartet werden, lokal einige Dateien kopieren, dann das FTP-Programm starten welches was hochlädt und danach soll die erste Batchdatei noch ein paar Sachen / Befehle machen.

Vielen Dank!

Hallo.

Du bist zwar hier etwas off-topic, aber ich könnte mir vorstellen du meinst sowas in der Art:

------------- ftp upload via batch --------------

copy C:\test.txt C:\upload\test.txt
copy C:\index.htm C:\upload\index.htm
copy C:\download.exe C:\upload\download.exe


\> C:\upload\upload.txt echo open ftp.suse.de
\>\> C:\upload\upload.txt echo anonymous
\>\> C:\upload\upload.txt echo bill.gä[email protected]
\>\> C:\upload\upload.txt echo ASCII
\>\> C:\upload\upload.txt echo CD /webpage
\>\> C:\upload\upload.txt echo PUT index.htm
\>\> C:\upload\upload.txt echo CD /texts
\>\> C:\upload\upload.txt echo PUT test.txt
\>\> C:\upload\upload.txt echo CD /downloads
\>\> C:\upload\upload.txt echo PUT download.exe
\>\> C:\upload\upload.txt echo BYE


FTP -s:C:\upload\upload.txt
DEL upload.txt

Diese Batchfolge lädt 3 Dateien auf den Server ftp.suse.de (Nur zu Demonstrationszwecken!!! Brauchst schon Deinen eigenen FTP Zugriff!).

Dabei wird interaktiv eine Datei upload.txt angelegt, die die FTP-Befehle beinhaltet. (Herunterladen mit GET statt PUT)

Normalerweise wird in der Batch-Verarbeitung sowieso abgewartet bis jeweils ein Task erledigt ist.

MfG
Hope that helps

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke, aber gehts das unter Windows?
Hallo

Vielen Dank…

Dachte Batchen ist Schripting?

Aber das sieht schwer nach Linux aus???
…klappt das auch unter Windows 2000?

Nochmals Danke im Vorraus!

Hallo Manuel!

Du bist zwar hier etwas off-topic…

Aber nur ein ganz klein wenig. :wink:

Also Dein Batch würde bei meinem Windows 98 gar nix hochladen. Alldieweil die Ausgabeumleitung so nicht funzt.

So es auf einem Windows 2000/XP/2003 laufen würde, dann schon mit…

> ------------- ftp upload via batch --------------  
>   
> copy C:\test.txt C:\upload\test.txt  
> copy C:\index.htm C:\upload\index.htm  
> copy C:\download.exe C:\upload\download.exe  
>   
>   
> \> C:\upload\upload.txt echo open ftp.suse.de  
> \>\> C:\upload\upload.txt echo anonymous  
> \>\> C:\upload\upload.txt echo bill.gä[email protected]  
> \>\> C:\upload\upload.txt echo ASCII  
> \>\> C:\upload\upload.txt echo CD /webpage  
> \>\> C:\upload\upload.txt echo PUT index.htm  
> \>\> C:\upload\upload.txt echo CD /texts  
> \>\> C:\upload\upload.txt echo PUT test.txt

rem hier mal in den Binär-Modus umschalten:
echo BINARY \>\>C:\upload\upload.txt 


> \>\> C:\upload\upload.txt echo CD /downloads  
> \>\> C:\upload\upload.txt echo PUT download.exe  
> \>\> C:\upload\upload.txt echo BYE  
>   
>   
> FTP -s:C:\upload\upload.txt  
> DEL upload.txt

SCNR

DannyFox64

Moin Blackf!

Dachte Batchen ist Schripting?
Aber das sieht schwer nach Linux aus???

Nö, DOS!

Bist da mit Deiner Frage vielleicht besser unter den „Windows“-Brettern oder bei „Programmierung allgemein“ aufgehoben.

…klappt das auch unter Windows 2000?

Sofern Du die Erweiterungen für DOS in Deinem Win2000 mit installiert hast… sollte es funktionieren. Weiteres zu geänderten DOS-Befehlen von Win2000 unter FAQ:419.

DOS-Befehle werden üblicherweise nacheinander ausgeführt. Deshalb gibt’s auch seit, glaube Windows 95C oder 98 den Befehl „start“ (START.EXE), um aus einem Batch heraus bzw. der DOS-Umgebung bei laufendem Windows (!) eine Windows-Anwendung zu starten. Beispiel:

 rem openlogf.bat
 rem Holt eine Kopie des letzten Logins auf den Desktop
 copy C:\LOGIN.TXT %windir%\Desktop
 rem ...und oeffnet's mit Windows-Editor
 start notepad.exe %windir%\Desktop\LOGIN.TXT 

Je nach (Standard-) Fenstereinstellung für Batches, bleibt das DOS-Fenster offen und zeigt „openlogf.bat beendet“ an, z.B. um die Bildschirmausgabe(n) zu kontrollieren (ist manchesmal wünschenswert).

Zu dem Batch, den Manuel gepostet hat, kann ich nicht sagen, ob die Ausgabeumleitung (z.B. auf Win2000) am Anfang der Zeile stehen darf. Keine Ahnung. IMHO müsste es dann in etwa so lauten:

 rem [...]
 echo ftp.host.de \>upload.inp
 echo password \>\>upload.inp
 rem usw... 

Fragen?

Gruss in den Schwarzwald

CU DannyFox64

Wow, danke, wo kann ich noch mehr dazu erfahren?
Hallo

Danke! das ist ja echt mächtig so wie das scheint…

Wo kann ich mehr zum Batchsythax erfahren…will mich näher damit beschäftigen…

Danke nochmal das Du Dir soviel Zeit und Mühe gibst…

Re-Hallo!

Danke! das ist ja echt mächtig so wie das scheint…

Wo kann ich mehr zum Batchsythax erfahren…will mich näher
damit beschäftigen…

Der Dank gilt Malte…: http://docvalde.net (> knowledge > coding)

Danke nochmal das Du Dir soviel Zeit und Mühe gibst…

Solltest Du Spass an ausgefeilten Batches haben, kann ich Dir mal ein paar zusenden. (Dann bitte Mail.)

CU DannyFox64