shannra666
Goto Top

Abbarbeitung einer ForEach in Powershell in eine Logdatei leiten

Hallo zusammen,

ich benötige mal wieder Hilfe bei einem Powershellscript. Ich möchte auf mehreren Servern nachts einen Dienst beenden. Der Status soll in eine Logdatei geschrieben werden, welche später mir per Mail zugesendet wird.

$startdate = get-date -Format 'yyyy_MM_dd'  
$Logfile = "c:\src\log_$startdate.txt"   

get-content C:\src\Powershell\Listen\server.txt | foreach {invoke-command {stop-service "<Service>"}-computer $_} | write-output "<Service> $_ beendet" | out-file $logfile -append  
Der Dienst wird auch jedesmal korrekt beendet und die Logdatei erzeugt. Aber es beinhaltet keinen Inhalt, welcher Server nun bearbeitet wurde.

Kann mir vielleicht jemand helfen?

Content-Key: 192801

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

Printed on: April 18, 2024 at 03:04 o'clock

Member: rubberman
rubberman Oct 15, 2012 at 17:04:29 (UTC)
Goto Top
Hallo shannra666,

ich bin zwar selber noch n00b in Sachen Powershell, aber instinktiv würde ich das write-output Cmdlet mit der entsprechenden Ausgabe auch mit in die foreach Schleife einbinden. Also rücke die letzte geschweifte Klamme weiter nach rechts und teste ob das etwas am Inhalt der Datei ändert face-wink

Grüße
rubberman
Member: shannra666
shannra666 Oct 18, 2012 at 07:50:59 (UTC)
Goto Top
Vielen Dank für die Antwort.

Ich habe es dann doch etwas anders gemacht. Ganz am Ende frage ich einfach nochmal alle Server ab, wie der Status des Services ist. Den packe ich in die LogDatei undsende Sie mir per Mail.

Trotzdem danke für deinen Ansatz.