monsteralf
Goto Top

Wie schreibe ich eine Batch-Datei die verschiedene PCs im Netzwerk runterfährt

Ich bräuchte Hilfe beim schreiben einer Batch-Datei die die im Titel enthaltenden Aufgaben erfüllt.

Also ich kenne mich nur wenig mit MS-DOS aus aber noch weniger mit dem Schreiben von Batch-Dateien.
Ich würde gerne eine Batch-Datei erstellen die nacheinander die Computer die in meinem Netzwerk verbunden sind herunterfährt.
Ich habe das vorher mit dem Befehl "shutdown -s -f -m \\Computername" in der Kommandozeile gemacht, war aber immer sehr aufwendig.
Deshalb wollte ich fragen ob mir einer helfen kann beim Erstellen einer Batch-Datei die automatisch alle Rechner im Netz herunterfährt würde mir echt vieles erleichtern.


[Edit Biber] Juni 2008
Keine Rückmeldung - kein Status.
Ärgernis bzw. Beitrag leider "ungelöst" geschlossen.
Er hatte ja jetzt genug Zeit, alle PCs manuell herunterzufahren.
[/Edit]

Content-Key: 27807

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

Printed on: April 19, 2024 at 02:04 o'clock

Member: ITwissen
ITwissen Mar 09, 2006 at 15:59:40 (UTC)
Goto Top
Wenn ich das richtig verstanden habe, liegt dein Problem bei "alle Rechner im Netz". Dann wuerde ich folgendes vorschlagen. Wenn dein Netzwerk 192.168.0.0/24 ist.

FOR /L %I IN (1,1,255) DO shutdown -s -f -m \\192.168.0.%I

Allerdings brauchst du 2 Schleifen wenn dein Rechner von dem aus du die Shutdowns machst im gleichen Subnetz ist. Du kannst natuerlich auch eine Datei mit den Rechnernamen anlegen:

FOR /F %I in (rechner.txt) do shutdown -s -f -m \\%I

Als Alternative zum Windows shutdown befehlt kann ich dir von Sysinternals (http://www.sysinternals.com) das "psshutdown" aus den PSTools empfehlen. Das hat noch ein paar mehr Optionen, die dir vielleicht helfen.

War es das was du gemeint hast?
Member: gijoe
gijoe Mar 09, 2006 at 16:05:39 (UTC)
Goto Top
hm, also du bist ja quasi schon am ziel;)??? du schreibst einfach für jeden PC diesen shutdownbefehl in eine batch, und fertig (schöner wäre natürlich eine schleife...aber was solls).
D.h. du machst ein Textfiel auf, nennst es um in shutdown.bat (oderso) und schreibst dann
shutdown -s -f -m \\Computername1
shutdown -s -f -m \\Computername2
...usw

oder das ganze geht auch mit psexec. dann müsstest du auf jedem pc eine shutdown.bat ablegen, und könntest die remote mit dem Befehl psexec \\pcXXX -u administrator C:\shutdown.bat aufrufen.

Grüsse GI
Member: monsteralf
monsteralf Mar 09, 2006 at 16:11:11 (UTC)
Goto Top
Ok danke für die Antworten ich versuch das mal.
Aber ich meinte es eigentlich so also ich habe öfters mehrere PC's gleichzeitig laufen und ich würde gerne eine Batch-Datei erstellen das wenn ich die anklicke er überprüft ob ein bestimmter Rechner erreichbar ist und falls nicht soll er zum nächsten Rechner gehen und den dann falls er erreichbar ist herunterfahren.
Diesen Vorgang müsste ich dann am Anfang mit einer bestimmten Taste aktivieren können.
Nur den PC wo die Batch-Datei liegt soll nicht heruntergefahren werden.
Member: ITwissen
ITwissen Mar 09, 2006 at 16:20:04 (UTC)
Goto Top
Eigentlich kannst du dir die Pruefung, ob ein Rechner reagiert sparen. Schick einfach den Shutdown hin, wenn er nicht an ist, passiert auch nichts.
Member: monsteralf
monsteralf Mar 09, 2006 at 16:33:48 (UTC)
Goto Top
Ok dann spar ich mir die Überprüfung ich hab das jetzt mal ausprobiert aber irgendwie klapt das noch nicht so ganz.
Ich seh nur kurz das Kommandozeilen Fenster und mehr nicht.
Also ist mein Problem leider noch nicht behoben.
Leider weiß ich gar nichts von Batch-Dateien weiß also auch nicht was ich genau da rein schreiben muss.
Kann mir vielleicht einer einen Text schicken den ich dann da rein schreiben kann so das nach und nach alle PC runterhefahren werden und das durch die PC's die nicht Online sind
keine Fehler passieren.
Also die Batch-Datei sollte nur 2 Sachen können.

1. Eine Abfrage machen also das ich das mit einem Tastendruck bestätigen muss (falls das überhaupt geht)
2. Alle Rechner im Netz nacheinander herunterfahren ohne Probleme

Es tut mir Leid das ich das nicht selber kann, aber wäre echt nett wenn mir einer so einen Text schicken kann.
Member: Biber
Biber Mar 09, 2006 at 18:21:24 (UTC)
Goto Top
Ist ja eine nette Idee, monsteralf,

dass Dir jemand eine Textdatei schickt, am besten noch so, dass sie unter Deinem über dem Desktop schwebenden Mauszeiger zu liegen kommt, Du nur noch einen Doppelklick machen musst und dann je nach Tageszeit mit "Guten Morgen", "Tach" oder "'n Abend" angesprochen wirst...

Ist aber nicht Sinn dieses Forums.. wir wollen ja nicht wegen akuter Platzprobleme unsere herumliegenden Lösungen loswerden, sondern auch gemeinsam Lösungen erarbeiten, die auf mehr als einem PC laufen oder verwendbar sind.

Das Argument "Ich hab keine Ahnung von Batch-Dateien, will aber was haben, was einfach funktioniert..." nö, das lasse ich auch nur bei zahlenden Kunden so stehen.

Du hast oben zwei Lösungsansätze bekommen.
Einen von ITWissen, der pessimistisch angenommen hat, Du hättest ein paar Hundert PCs in Deinem Netzwerk. Und einen realistischen von gijoe, der von einer recht überschaubaren Menge Rechnern ausgeht, was wahrscheinlich auch näher an der Wahrheit liegt (sind ja wohl eher drei bis vier als 300 bis 400).
Jetzt wärst Du wieder dran mit der Konkretisierung "Ja, sind 4 PCs und eine Schleife lohnt sich eher nicht.." und der Info "Ach übrigens, ich habe Windows 2000" (oder XP Home), damit die geduldigen Mit-Rater hier die richtige Syntax für den Shutdown-Befehl tippen können. Ist nämlich unterschiedlich bei den Win-Versionen.

Und um es noch einmal deutlich zu machen - jeder, der hier Lösungen postet, hat schon die Hoffnung, dass die Lösung richtig, verständlich und nachvollziehbar für viele mit ähnlichen Problemen ist. Und eben auch, dass der Fragesteller den Lösungsweg als Grundlage zum Selber-Weitermachen-Können nutzen kann und will.
Eine schlüsselfertige Lösung per Mail, von der die community hier nur erfährt "ein Doppelklick funktioniert aber nicht" oder "es geht jetzt" ist insgesamt eher unbefriedigend.

Gruß
Biber
Member: gijoe
gijoe Mar 09, 2006 at 18:29:31 (UTC)
Goto Top
man ich musste mich kugeln vor lachen Biber, lol, und das mitten im unterricht. Ja, es stimmt, er darf sich ruhig ein bisschen mühe gebenface-smile

@monsteralf: öffne mal eine command-shell, und ziehe deine batch datei mit der maus rein, dann geht sie auch nicht zu wenn du einen fehler hast. Und dann kannste in ruhe lesen was du falsch gemacht hast...
grüsse Gi

...oh man dieses script muss ich haben.... if %tageszeit%=%morgen% echo Guten Morgen...
lol
Member: monsteralf
monsteralf Mar 10, 2006 at 18:23:17 (UTC)
Goto Top
Gut danke also ich habe die erste Antwort ausprobiert funktioniert leider nicht.
Die zweite Lösung funktioniert bei meinem eigenen PC (Windows XP Pro) aber wenn ich noch mehrere Computer (alle Win XP Home/Pro) aus meinem Netzwerk einfüge kommt immer Netzwerkpfad nicht gefunden oder Zugriff verweigert, obwohl die Netzwerkpfade stimmen und die Computer nicht kennwortgesichert sind.
Könnte mir dabei vielleicht eine helfen.
Und mein Beitrag war nur eine Frage und Fragen kostet nichts und nochwas ich bin hier zum ersten Mal und kennenmich nicht wie ein Profi mit den Regeln hier aus tut mir leid ist aber so.
MFG
monsteralf
Member: ITwissen
ITwissen Mar 10, 2006 at 20:00:15 (UTC)
Goto Top
Ich denke wir sind davon ausgegangen, dass du eine Windows Domaene (AD) hast und den Shutdown-Befehl als Domaenen Administrator ausfuehrst. Wenn das nicht so ist, geht das so nateurlich nicht.

Windows ist immer kennwortgeschuetzt. Auch ein leeres Passwort ist ein Passwort.
Grob gesagt nur der Windows Administrator Account kann ein Rechner remote zum Runterfahren bringen.

Wie Biber schon sagte, hier bringen wir dir hoechstens Denkanstoesse und keine fertigen Scripts.

Hier noch ein paar Ergaenzende Hinweise die dein Problem loesen koennen.

1. statt dem Windows shutdown-Befehl nimmst du das "psshutdown" von Sysinternals
http://www.sysinternals.com
Dort kannst du ein Login und ein Passwort mit angeben, um dich mit dem Rechner zu verbinden.

2. Die Windows Rechner muessen sich natuerlich kennen oder du nimmst die IP Nummer fuer die Verbindung. Dafuer gibt es mehrere Moeglichkeiten:
a. Active Directory Domaene
b. lmhosts Datei mit allen Rechnernamen drin
c. WINS
d. NetBios over TCP/IP
Mitglied: 36539
36539 Oct 31, 2006 at 18:06:44 (UTC)
Goto Top
Ich würde gerne eine Batch-Datei erstellen die nacheinander die Computer die in meinem Netzwerk verbunden sind herunterfährt.

Neben allen anderen Vorschlägen möchte ich Euch noch "WINEXIT-Pro" vorstellen.
http://toolsandmore.de/Central/Produkte/Software/System-Tools/Winexit-P ...
Es ist programmierbar sowie Remote-/LAN-fähig.

gruß
onegasee59