2017-01-09 37 views
-1

Ich habe ein sehr kurzes Power-Shell-Skript geschrieben, das die Binärdateien des Ossec-Agenten vom lokal gehosteten HTTP-Server herunterlädt und installiert und auf den jeweiligen Rechnern ausführt. Die Binärdateien werden mit der IP-Adresse der jeweiligen Maschine benannt. Ich möchte dieses Skript auf mehr als 500 hundert Maschinen aus meinem Active Directory als Start-Skript ausführen, aber es funktioniert nicht. Ich habe das Skript-Verzeichnis von Power Shell auf 5-6 Maschinen getestet und es funktioniert. Kann jemand bitte überprüfen, was falsch ist? Hier ist das einfache Powershell-Skript.Power Shell Skriptausführung von den AD-Starup-Skripten

$user=$env:username 
$localIpAddress=((ipconfig | findstr [0-9].\.)[0]).Split()[-1] 
powershell -Command "(New-Object Net.WebClient).DownloadFile('http://192.168.10.220/$localIpAddress.exe','C:\Users\$user\Downloads\ossec.exe')" 
cd "C:\Users\$user\Downloads" 
.\ossec.exe /S 
+0

Bitte Fragen nicht wieder Post. Wenn Sie zusätzliche Informationen angeben müssen: Bearbeiten Sie die bereits gepostete Frage. –

Antwort

0

Ich würde Ihre ExecutionPolicy Einstellungen überprüfen und ggf. sehen, ob die Datei „Deblockierung“ braucht - here für weitere Informationen zu sehen.

Auf einer anderen Note, WMI ist eine etwas sauberere Weg, um Ihre Maschine IP-Adresse zu bekommen, z.B .:

[String] $strIP = (Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter 'IPEnabled = "true"' | Select-Object -First 1).IPAddress;