dankon7goo
Goto Top

Psexec mit listensyntax

Hallo, any Help appreciated face-smile

Ich kann via PSEXEC auf unseren Poolclients von der Adminworkstation (wie die Poolclients Win7 Prof i86 SP1) ohne Probleme via Netsh die entsprechenden Firewallregeln anpassen...

Diese Commandozeile welche von der Adminworkstation mit Adminberechtigungen gestartet wird läuft fehlerfrei durch auf allen Pool PCs und schaltet die Firewall Regel auf den Clients entsprechend, beispielsweise diese Eingabe in der CMD:

C:\Windows\system32>psexec \\rs001 -u USER -p PASSWORD netsh advfirewall set currentprofile settings remotemanagement enable

was mit folgender Ausgabe quittiert wird:

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

OK.

netsh exited on rs001 with error code 0. 

** Postiv also!

Wenn ich aber hingegen um mir Zeit zu ersparen die gleich Syntax mit einer Liste (@) hinterlege

C:\Windows\system32>psexec @"\\storage.de\[...]\pcliste-klein.txt" -u USER -p PASSWORD netsh advfirewall set currentprofile settings remotemanagement enable  

dann arbeitet er zwar die in der Liste enthaltenen Clients feinsäuberlich ab (hier stehen alle Hostnamen), aber es kommt immer die Fehlermeldung:

PsExec v1.98 - Execute processes remotely
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

\\rs001:

Der folgende Befehl wurde nicht gefunden: psexec.
netsh exited on rs001 with error code 1. 

Ich komme hier nicht weiter, dass die Liste in der Txt richtig ist denke ich schon, sonst würde er ja nicht connecten mit erfolg...

Kann hier vielleicht ein Scriptekundiger einmal "seinen Senf zugegen"? wäre mir bestimmt eine große hilfe!!


Viele Grüße,
dankon

Content-ID: 178174

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

Ausgedruckt am: 21.11.2024 um 16:11 Uhr

bastla
bastla 29.12.2011 um 14:56:06 Uhr
Goto Top
Hallo dankon7goo!

Stehen die Computernamen in der Liste mit vorangestelltem "\\"?
Als Workaraound könntest Du auch den Aufruf von "psexec" in eine Schleife der Art
for /f "usebackq" %i in ("\\storage.de\[...]\pcliste-klein.txt") do psexec \\%i -u USER -p PASSWORD netsh advfirewall set currentprofile settings remotemanagement enable
packen - in einem Batch jeweils mit "%%i" anstatt "%i" ...

Grüße
bastla
dankon7goo
dankon7goo 30.12.2011 um 09:41:17 Uhr
Goto Top
Hey, Bastla Danke!!!

nein ich habe die Liste ganz puristisch eingetragen - diese läuft ja auch sauber i.d.S. dass die Clients erkannt werden ?
Beispielauszug
RS001
RS002
RS003

alles gespeichert als ANSI

kein Plan!?

...Hey Bastla: vieeelen Dank - Dein Script klappt wunderbar, wünschte ich könnte so was auch ;)

Ich habe es mit deinem "Script" gelöst und bin zufrieden!

Viele Grüße,
dankon7goo
bastla
bastla 30.12.2011 um 13:02:14 Uhr
Goto Top
Hallo dankon7goo!

Warum es mit der Liste nicht direkt klappt, kann ich leider auch (noch) nicht erklären - aber schön, dass zumindest die Alternative hilft face-smile ...
wünschte ich könnte so was auch ;)
Es muss ja nicht beim Wunsch bleiben - gerade hier (im Bereich "Batch & Shell") findest Du eine Unmenge an Beispielen, und speziell zum Thema "for"-Schleife auch das passende Tutorial zur FOR-Schleife.

Grüße
bastla
dankon7goo
dankon7goo 30.12.2011 um 13:37:10 Uhr
Goto Top
Joahh face-smile

... hatte ich mir auch schon oft vorgenommen!

Thx für den Link & the immediate help !!!

Dankon7goo