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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 62100
Url: https://administrator.de/forum/usereingabe-in-batch-62100.html
Ausgedruckt am: 24.12.2024 um 01:12 Uhr
5 Kommentare
Neuester Kommentar
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):
Falls Du nicht mit 2 Dateien hantieren willst, kannst Du auch statt type "up-vorlage.txt">up.txt alle einzelnen Zeilen so schreiben:
Grüße
bastla
[Edit] Leerstellen vor Umleitungszeichen eingefügt. [/Edit]
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]
@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
Also mir geht es nur um das "setlocal" !! ??
__
Grüße Kallinger
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
Hallo Kallinger!
Ergänzend zu "setlocal /?" die Kurzfassung: Damit gelten neue/veränderte Variablenwerte nur bis zu einem "endlocal" oder bis zum Ende des Batches (was halt früher kommt ).
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
Ergänzend zu "setlocal /?" die Kurzfassung: Damit gelten neue/veränderte Variablenwerte nur bis zu einem "endlocal" oder bis zum Ende des Batches (was halt früher kommt ).
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