Jump to content

Newbie - Ausgabe in Datei


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

ich muss gleich warnen, meine Frage ist (leider) "Kindergartenniveau". Bisher hatte ich mit der PowerShell nichts zu tun, bin aber durchaus interessiert.

 

Heute hat mich ein Kumpel gefragt, ob ich ihm ein kleines Script (Spielerei, nicht Wichtiges) für die Powershell schreiben könnte. Da ich mit dieser bisher nichts zu tun hatte habe ich (unter Vorbehalt) "ja" gesagt - learning by doing (er weiß das auch!).

 

Es geht darum, aus einem SCOM die User-Roles zu ziehen und dann darszustellen, welche Scopes, Views und Tasks die User/Gruppen haben.

 

Mit dem Script bekomme ich zumindest auch (mit Hängen und Würgen) die Scopes raus.

cls
Get-UserRole | Sort-Object DisplayName | foreach { 
 If($_.IsSystem -ne $true)
 {
Write-Host "Group Scope for" $_.DisplayName ":"
#Write-Host $role.monitoringprofile.name
   If($_.Scope.MonitoringClasses -ne $null)
{
	#$_.Scope.MonitoringClasses | foreach {Get-MonitoringClass -Id $_} | Sort-Object MonitoringProfile | foreach {Write-Host "  "$_.monitoringProfile}
	$_.Scope.MonitoringClasses | foreach {Get-MonitoringClass -Id $_} | Sort-Object DisplayName | foreach {Write-Host "  "$_.displayName}
   } 
else 
{
	#$_.Scope.MonitoringObjects | foreach {Get-MonitoringObject -Id $_} | Sort-Object DisplayName | foreach {Write-Host "  "$_.displayName}
	"   All grous are selected!"
   }
Write-Host "`r"
 }
}

 

Aber wie bekomme ich das nun in eine Datei? Ich habe schon an allen möglichen und unmöglichen Position im Quelltext eine File-Out versucht, bekomme das Ganze aber nicht in eine Datei.

 

Mag mir da jemand auf die Sprünge helfen?

 

Vielen Dank im Voraus!

Link zu diesem Kommentar

Überall wo Write-host steht kannst du mit out-file ersetzen oder ergänzen.

 

z.B.

{Write-Host "  "$_.displayName}

->

{Write-Host "  "$_.displayName; Out-File "  "$_.displayName -FilePath filename.txt -Append}

 

Achtung.

Bei existierenden Dateien wird der Text einfach angehangen. Entweder davor behandeln oder beim ersten out-file das "-append" weglassen (dabei wird die Datei überschrieben).

 

EDIT:

Was mir noch aufgefallen ist:

... -ne $true

ist das selbe wie

... -eq $false

oder

!(...)

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...