ruffneck
Goto Top

Usereingabe in Batch

Brauche Ratschläge um ein Projekt zu vollenden.

Hallo,

Ich soll für einen guten Kumpel einen Updater schreiben der sich aus dem Netz Bannlisten lädt. Das ist soweit kein Thema, Beim Upload auf den jeweiligen Server habe ich jedoch Probleme.

Die Server IP ist von mal zu mal verschieden und ich würde gerne vorher in der Batch abfrage eine Lücke lassen wo man die IP des Server eingeben kann.
Dies sollte dann aber in die up.txt übernommen werden, diese sieht so aus.

up.txt:

open server.ip.hier.hin
Username
Passwort
cd /pfad/zum/pb/ordner
put Temp\Neue-Banlisten\aasaprivbanguid.dat
put Temp\Neue-Banlisten\acibans.dat
put Temp\Neue-Banlisten\aonbans.dat
put Temp\Neue-Banlisten\cbban.dat
quit


ENDE

also sollte die IP die der User eingibt nach "open" erscheinen.

Wäre super wenn mir einer helfen würde.


Gruß Ruffi

Content-ID: 62100

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

Ausgedruckt am: 13.11.2024 um 00:11 Uhr

bastla
bastla 22.06.2007 um 17:25:13 Uhr
Goto Top
Hallo Ruffneck und willkommen im Forum!

Wenn der gesamte Rest der "up.txt" unverändert bleiben kann, würde ich diesen "Rest" (also alles außer der ersten Zeile) in eine eigene "up-vorlage.txt" speichern und die "up.txt" so erstellen (lassen):
@echo off & setlocal
set /p IP=Aktuelle IP eingeben_
echo open %IP% >up.txt
type "up-vorlage.txt">>up.txt  
echo.
echo Zur Kontrolle:
type up.txt

Falls Du nicht mit 2 Dateien hantieren willst, kannst Du auch statt type "up-vorlage.txt">up.txt alle einzelnen Zeilen so schreiben:
echo Username>>up.txt
echo Passwort>>up.txt
echo cd /pfad/zum/pb/ordner>>up.txt
...

Grüße
bastla

[Edit] Leerstellen vor Umleitungszeichen eingefügt. [/Edit]
Ruffneck
Ruffneck 22.06.2007 um 18:58:33 Uhr
Goto Top
Dankeschön

hat mir sehr geholfen :o)


Gruß Rainer
Kallinger
Kallinger 22.06.2007 um 19:45:16 Uhr
Goto Top
@bastla
Ich habe deine Batch - Kentnisse schon oft gebrauchen können!! thx dafür !!
Da ich "noch" ein Batch Anfänger bin eine Frage: Wofür steht das

@ echo off (Klar!!) & setlocal ??

Also mir geht es nur um das "setlocal" !! ??

__
Grüße Kallinger
bastla
bastla 22.06.2007 um 19:53:31 Uhr
Goto Top
Hallo Kallinger!

Ergänzend zu "setlocal /?" face-wink die Kurzfassung: Damit gelten neue/veränderte Variablenwerte nur bis zu einem "endlocal" oder bis zum Ende des Batches (was halt früher kommt face-wink).

Im Beispiel oben wird also die Variable %IP% am Ende des Batches wieder "vergessen" - besonders, wenn man gerne die gleichen Variablennamen verwendet, kann man so sicher sein, in einem anderen Batch nicht irgendwelche "Altlasten" berücksichtigen zu müssen. Auch beim Testen (und daher mehr- bis oftmaligem Ausführen eines Batches) kann man dadurch sicher sein, dass der Wert der Variablen aus diesem Durchlauf stammt.

Grüße
bastla
Kallinger
Kallinger 23.06.2007 um 07:51:03 Uhr
Goto Top
AH, Ok DANKE


__
Grüße Kallinger