Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batch - Remote Shutdown

Frage Entwicklung Batch & Shell

Mitglied: Nowologix

Nowologix (Level 1) - Jetzt verbinden

16.03.2007, aktualisiert 26.03.2007, 8230 Aufrufe, 23 Kommentare

PC's im Netzwerk anzeigen und Herunterfahren

Hallo
Ich habe hier ein kleines netztwerk aus 8 Rechnern.
Ich würde gerne vollgende Befehle, Funktionen kennen:

1. PC's im Netzwerk Anzeigen.
z.B.:
NOWO-82930523
LUKAS-92352364
PETER-23527352
...

2. Gewählten PC herunterfahren.

Der gewählte PC muss dann halt irgendwie als Variable angezeigt werden.


Habt ihr dafür eine lösung :- ( ??
Ich weis es gibt programme, aber ich würde das liebendgerne mitner bat machen.
( gibt glaubich den befehl schutdown.. kann man den nicht mit admin rechten senden?)
Mitglied: miniversum
16.03.2007 um 15:54 Uhr
Spontan, ungetestet und ohne Fehler abzufangen würde ich es so versuchen:
01.
@echo off 
02.
setlocal enabledelayedexpansion 
03.
set wahl=0 
04.
net view /all>%temp%\netusers.txt 
05.
FOR /F "skip=3 delims=" %%A in (%temp%\netusers.txt) do ( 
06.
set /a wahl=!wahl!+1 
07.
echo !wahl!: %%A 
08.
09.
set /p wahl=Bitte Computer wählen (1-%wahl%):  
10.
set "auswahl=" 
11.
set /a wahl=%wahl%+2 
12.
FOR /F "skip=%wahl% delims=" %%A in (%temp%\netusers.txt) do if not defined %auswahl% set auswahl=%%A 
13.
shutdown /m %auswahl%
miniversum
Bitte warten ..
Mitglied: tbw-01
16.03.2007 um 16:43 Uhr
net view /all>%temp%\netusers.txt

So klappt besser:
net view>%temp%\netusers.txt


Cu,
TBW
Bitte warten ..
Mitglied: bastla
16.03.2007 um 17:10 Uhr
... und so:
FOR /F "skip=%wahl% delims=" %%A in (%temp%\netusers.txt) do if not defined %auswahl% set auswahl=%%A
01.
FOR /F "skip=%wahl% delims=" %%A in (%temp%\netusers.txt) do if not defined auswahl set auswahl=%%A
Grüße
bastla
Bitte warten ..
Mitglied: miniversum
16.03.2007 um 18:04 Uhr
ok.. wie gesagt war ungetestet.
Interessant aber. Unter vista heißt das net view /all unter xp net view

miniversum
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 00:32 Uhr
Also irgendwie funkioniert das nicht richtig o.O
Bin ich zu naiv ? oder liegt es an was anderem.. ?

Es soll ungefähr so sein:
:ShutdownPC
@echo Im Netzwer vorhandene PC's:
@echo.
(1) : %REMOTEPC1%
(2) : %REMOTEPC2%
(3) : %REMOTEPC3%
(4) : %REMOTEPC4%
@echo.
set /P CHS=Eingabe:
if /I "%CHS%"=="1" goto :Shutdown REMOTEPC1
if /I "%CHS%"=="2" goto :Shutdown REMOTEPC2
if /I "%CHS%"=="3" goto :Shutdown REMOTEPC3
if /I "%CHS%"=="4" goto :Shutdown REMOTEPC4
goto :ShutdownPC

Ich weis :- ( ich habe nicht sonderlich viel ahnung von der Arbeit mit Variablen..
Wie könnte man denn das ganze den Umsetzen ??
Bitte warten ..
Mitglied: bastla
17.03.2007 um 03:25 Uhr
Hallo Nowologix!

So könnte es gehen:
01.
@echo off & setlocal 
02.
set "Comp=%Temp%\Computers.txt 
03.
echo [0] : Ende>"%Comp%" 
04.
for /f "tokens=1-2 delims=:\ " %%i in ('net view^|more +3^|findstr /n "\\"') do @echo [%%i] : %%j>>"%Comp%" 
05.
:Liste 
06.
cls 
07.
type "%Comp%" 
08.
echo. 
09.
:Eingabe 
10.
set Eingabe= 
11.
set /p Eingabe=Welchen Computer herunterfahren?  
12.
if [%Eingabe%]==[] goto :Liste 
13.
if [%Eingabe%]==[0] goto :eof 
14.
for /f "tokens=2 delims=: " %%r in ('findstr /c:"[%Eingabe%]" "%Comp%"') do shutdown -s -m "\\%%r" 
15.
goto :Eingabe
Wird bei der Eingabe der Computernummer nur die Eingabetaste gedrückt, werden der Bildschirm gelöscht und die Computerliste neu angezeigt.

Zum Testen bietet es sich an, den Shutdown mit dem Zusatz "-t 60" zu verzögern. Zum Abbrechen des Shutdown-Vorganges vom Prompt eingeben:
01.
shutdown -a -m "\\Computername"
Grüße
bastla

[Edit] -m ergänzt [/Edit]
[Edit2] Computernamen unter Anführungszeichen gesetzt [/Edit2]
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 13:47 Uhr
Wunderbar !!!
Ein riesiges Dankeschön an dich bastla !!

--
Nur noch 2 kleine Fragen:
1.Listet er Alle PC's auf die im Netzwerk sind ?
Und fügt auch automatisch die Nummer hinzu ?

2.Wenn ich mich selbst damit Herunterfahre erscheint eine ShutDown Meldung:
"Das System wird herunter gefahren. Bitte speichern sie... usw. ect. NOCH 29 SEKUNDEN"
Obwohl im script ja : shutdown -s -m steht.
Also nichts von Message oder Delay.
Bitte warten ..
Mitglied: bastla
17.03.2007 um 14:13 Uhr
Hallo Nowologix!

1.Listet er Alle PC's auf die im Netzwerk sind ?
... sofern sie aktuell erreichbar sind ...
Und fügt auch automatisch die Nummer hinzu ?
Ja; wird immer für die aktuell erreichbaren Rechner von 1 beginnend hochgezählt.
Falls Du immer die gleiche Nummer für Deine PC verwenden willst, kannst Du ja die Liste (siehe Datei "%temp%\Computers.txt") auch fix erstellen (und an anderer Stelle speichern; im Batch dazu die Zeile 2 anpassen und die Zeilen 3 und 4 entfernen) - Nachteil: Es werden dann auch Rechner angezeigt, die bereits ausgeschaltet sind.

2.Wenn ich mich selbst damit Herunterfahre erscheint eine ShutDown Meldung
Defaultmäßig wird 30 s Delay verwendet und auf den Shutdown hingewiesen - der mit "-c" anzugebende Kommentar ist nur als Zusatzinformation für das Meldungsfenster gedacht.

Noch genauer steuern kannst Du übrigens den Shutdown mit PsShutdown.

Grüße
bastla
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 14:20 Uhr
Topp Vielen dank.
Schon fast ein Tutorial.. ;- )
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 16:24 Uhr
Oh ich habe das ganze mal grade an einem PC im Netzwerk getestet..

Es erscheint dann:
BEISPIEL:

[0] : Ende
[1] : NPACMAN-BB2412513
[2] : EIGENER PC

Eingabe: 1

Der Netzwerkpfad wurde nicht gefunden.
Liegt es daran das ich keine Admin rechte auf dem Genannten PC habe ?
Wie könnte ich das umgehen ?
Oder findet er den Pfad wirklich nicht ?

edit.: sorry doppel post :- (
Bitte warten ..
Mitglied: bastla
17.03.2007 um 16:47 Uhr
Hallo Nowologix!

Vorweg: ohne Adminrechte wird's wohl nicht gehen ...

Oder findet er den Pfad wirklich nicht ?
Das kannst Du feststellen, indem Du im Batch das "@echo off" weg lässt und Dir ansiehst, wie der shutdown-Befehl vom Batch aus geschrieben wird. Zur Kontrolle kannst Du außerdem den gleichen Befehl selbst eingeben.

Es könnte sein, dass der "-" im Computernamen stört - ändere zur Sicherheit den Shutdown-Befehl auf
01.
 ... shutdown -s -m "\\%%r"
Ich hole das im Listing oben auch nach.

Grüße
bastla
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 16:56 Uhr
Er zeigt hier anscheinend nicht die PC, sondern die Benutzernamen an.
Bei mir steht z.B.

NOWO-BB21425146

andere PC's werden jedoch nur so angezeigt z.B:

PETER
KLAUS
MANFRED

Bei dem Shutdown befehl wird z.B.:
shutdown -s -m PETER
ausgeführt.

Sollte das nicht:
shutdown -s -m PETER-BB2151353\Peter
heißen ??
Bitte warten ..
Mitglied: bastla
17.03.2007 um 17:10 Uhr
Hallo Nowologix!

Sollte das nicht:
shutdown -s -m PETER-BB2151353\Peter
heißen ??
Das sollte heißen
01.
shutdown -s -m "\\PETER-BB2151353"
(nach der oben angesprochenen Änderung hinsichtlich der Anführungszeichen).
Welches System verwendest Du eigentlich, und was liefert der Befehl "net view"? Unter 2000 / XP erhalte ich eine Ausgabe nach folgendem Muster:
01.
Servername             Beschreibung 
02.
 
03.
------------------------------------------------------------------------------- 
04.
\\SERVERNAME1 
05.
\\SERVERNAME2 
06.
\\WSNAME1 
07.
... 
08.
\\WSNAME24 
09.
Der Befehl wurde erfolgreich ausgeführt.
Grüße
bastla
Bitte warten ..
Mitglied: miniversum
17.03.2007 um 17:15 Uhr
Jetzt nochmal meine überarbeitete Version udn auch unter nem win xp pro getestet...
01.
@echo off 
02.
setlocal enabledelayedexpansion 
03.
set maxwahl=0 
04.
net view>%temp%\netusers.txt 
05.
FOR /F "skip=3 delims=" %%A in (%temp%\netusers.txt) do set /a maxwahl=!maxwahl!+1 
06.
set wahl=0 
07.
FOR /F "skip=3 delims=" %%A in (%temp%\netusers.txt) do ( 
08.
set /a wahl=!wahl!+1 
09.
if !wahl! lss %maxwahl% echo !wahl!: %%A 
10.
11.
set /a wahl=%wahl%-1 
12.
set /p wahl=Bitte Computer wählen (1-%wahl%):  
13.
set "auswahl=" 
14.
set /a wahl=%wahl%+2 
15.
FOR /F "skip=%wahl% delims=" %%A in (%temp%\netusers.txt) do if not defined auswahl set auswahl=%%A 
16.
ECHO shutdown /s /m %auswahl%
miniversum
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 17:46 Uhr
hmm wie gesagt...
Es erscheint immernoch nur PETER
und nicht PETER-BB2252....

Bei beiden möglichkeiten ... und auch mit Anführungsstrichen..
Bitte warten ..
Mitglied: bastla
17.03.2007 um 18:39 Uhr
Hallo nowologix!

Darf ich Dich einladen, den Befehl "net view" an der Commandline einzugeben und die Ausgabe des Befehls zu posten?

Grüße
bastla
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 18:43 Uhr
*räusper* ok tut mir leid.. der name des PC's ist nicht PETER-BB224343....
sondern einfach nur Peter ^^

Aber wenn das alles richtig ist... wieso heißt es nun immernoch "Pfad nicht gefunden" ?
Bitte warten ..
Mitglied: bastla
17.03.2007 um 18:50 Uhr
Also weiter von der Commandline:
01.
shutdown -s -m \\PETER
bringt welches Ergebnis (Anführungszeichen spielen in diesem Fall keine Rolle)?

bastla
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 18:54 Uhr
shutdown -s -m \\PETER

Der Netzwerkpfad wurde nicht gefunden
Bitte warten ..
Mitglied: bastla
17.03.2007 um 19:18 Uhr
Wenn der Rechner PETER grundsätzlich erreichbar ist (ping), fällt mir momentan keine vernünftige Erklärung dazu ein - fehlende Admin-Rechte sollten nämlich eher zu folgender Fehlermeldung führen: "Der Client besitzt ein erforderliches Recht nicht."

bastla
Bitte warten ..
Mitglied: Nowologix
17.03.2007 um 19:25 Uhr
Ping Funkioniert.
Der andere Rechner antwortet und ist demnach online/ereichbar.

Nur dieser verdammte Shutdown -s -m PETER befehl funst nicht..
Bitte warten ..
Mitglied: Nowologix
18.03.2007 um 00:13 Uhr
Ok habe das ganze mal bei einem Freund versucht.
Bei ihm fehlen die Rechte...

Bei mir scheint es am Router oder an änlichem zu liegen.


Wie gebe ich denn ein Passwort und-oder einen Benutzer namen beim shutdown ein ?
Ich weis es gibt ein besonderes shutdown tool.. aber die bat soll standalone sein..
sie muss funkionieren ohne das vorher eine datei ins system32 verzeichniss kopiert werden muss.
Bitte warten ..
Mitglied: dig-mail
26.03.2007 um 13:58 Uhr
hallo Nowologix,

es liegt bei dir nicht am router, du musst in der windows-firewall die "datei- und druckerfreigabe" freigeben,
dann sollte der pc schon mal erreichbar sein.

aber wenn nicht der gleiche benutzer auf dem anderen rechnern läuft, kannst du diese auch nicht runterfahren.
möglich wäre es nur wenn du den telnet-server auf jedem rechner starten würdest!

Mit freundlichen Grüßen

D.I.G
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Batch: Remote shutdown wenn niemand angemeldet ist (2)

Frage von pablovic zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch datei für shutdown von 3x win8.1 basic Rechnern ohne direkten Steuerbefehl!!?? (7)

Frage von TheCollecter zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...