caddy0815
Goto Top

Batch für mehrere PCs mit FOR

Ich arbeite öfter mit Batch Dateien um kleines Aufgaben in unserer Firma zu erledigen. So z.B. kleine Tools verteilen, Einstellungen vornehmen u.ä.
Leider nutzen wir noch keine GPO oder Sortwareverteilung mittels Domain.

Ziel: einen Befehl für einen IP-Bereich ausführen, den ich zu Beginn definiere. Z.B. von 1 bis 10, womit 10 Rechner nacheinander angepingt werden und wenn sie antworten läuft der Befehl.
Ich habe folgende Batch zusammengeschrieben:

:start
echo Start IP angeben 192.168.000.?
set /P S=
echo End IP angeben 192.168.000.?
set /P E=

for /L %%N IN (%S, 1, %E) DO
(
echo %%N
pause
ping -n 1 192.168.000.%%N
if not errorlevel 1 goto clean

:clean

psexec \\192.168.12.%%N -s -h "UNC-Pfad\.bat"

)

Leider klappt das nicht so recht.
Was mache ich denn falsch.

Mit For habe ich noch nicht gearbeitet.

Danke euch.
Kommentar vom Moderator Biber am 20.02.2012 um 08:14:49 Uhr
Beitrag wieder aus dem "Papierkorb" nach "Batch & Shell" verschoben.

Content-ID: 180681

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

Ausgedruckt am: 14.11.2024 um 11:11 Uhr

60730
60730 17.02.2012, aktualisiert am 18.10.2012 um 18:50:05 Uhr
Goto Top
moin,

grob erinnert mich das an

nur ist das immer komisch, wenn auf eine Zeile
if not errorlevel 1 goto clean
die Zeile
:clean
folgt.

Und wenn da eh nur ein Psexec drin ist, warum der ganze Aufmarsch?

Ps:
Code tags sind viel schöner und wenn du die schon reineditierst, vergiss die Grußformel nicht.
Caddy0815
Caddy0815 17.02.2012 um 11:30:51 Uhr
Goto Top
Danke dir.
Irgendwo hatte ich einen Fehler.
Das goto war für eine andere Variante gedacht.
bastla
bastla 17.02.2012 um 12:27:10 Uhr
Goto Top
Hallo Caddy0815!

Mit %S und %E wird das aber in einem Batch trotzdem nix werden ...

Grüße
bastla

P.S.: ... und wie's aussieht auch nicht mit dem Ändern auf "Code"- ...
Biber
Biber 17.02.2012 um 14:35:40 Uhr
Goto Top
Ich sach ma' so...

ich geh jezz' in Ruhe einen Cappuccino trinken und wenn sich der Beitrag dann immer noch nicht weiterentwickelt hat.... dann ist er Asche.

Biber aka der Freitags-immer-Gutgelaunte
Biber
Biber 17.02.2012 um 18:28:05 Uhr
Goto Top
menno, menno,

wieso helfen eigentlich so kleiner Anschubser nicht?

Ich hasse es, immer gleich die Stimme erheben zu müssen.

Wieso reagieren einige Leute erst nach der dritten Eskalationsstufe?

Alles kleine Wulffs hier, hmm?

Hint @ Caddy0815:

Es gibt zwei Möglichkeiten, den Papierkorb wieder zu verlassen.

Du bist jetzt am Zug.

back-to-top### Papierkorb ####


Biber
Caddy0815
Caddy0815 20.02.2012 um 08:11:31 Uhr
Goto Top
Hi,

wie ich ja schon geschrieben hatte, war der Beitrag von TimoBeil voll nützlich.
Ich glaube so funktioniert das ganze, so wie ich es wollte.

Danke.

So sieht es jetzt aus:
:start
@echo off
echo Start IP angeben 192.168.00.?
set /P S=
echo End IP angeben 192.168.00.?
set /P E=

Set ip=192.168.00.

FOR /L %%N IN (%S%, 1, %E%) DO (
	title %ip%%%N
	
	ping -n 1 -w 5 %ip%%%N|find "TTL=" && psexec \\%ip%%%N -s -h "installbatch"  
	
)
goto start