Powershell Befehl umschreibe, wie muss das aussehen?

...komplette Frage anzeigen

1 Antwort

Folgendes:

$FileName = $env:USERNAME + "_software.txt"
$Path = "M:\software\powershell"
$Soft = Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\* | sort -Property DisplayName | Format-Table DisplayName, Publisher, DisplayVersion
$Soft | Out-File "$Path\$FileName"

Allerdings bekomme ich damit bei weitem nicht sämtliche Software. Denk auch dran, dass eine Tabelle nur eine gewisse Spaltbreite zulässt (ist der Name zu lang, wird er gekürzt).

Ums schonmal vorwegzunehmen: Spar dir die Arbeit mit Win32_Product, falls du es ausbessern willst/musst.

http://blogs.technet.com/b/askds/archive/2012/04/19/how-to-not-use-win32-product-in-group-policy-filtering.aspx

Die erste Zeile liest den Benutzernamen aus. Da solltest du mal gucken (bin mir nicht mehr ganz sicher), ob der Benutzername nicht mit "Domain\Username" angegeben wird. Dann musst du noch ein "$FileName = $FileName.Split('\')" einbauen.

PS: Was ich nicht so ganz verstehe ist, warum du das nicht zentral (Invoke-Command) machst. Wenns regelmäßig sein müsste, würdest du halt n Task erstellen und alles in entweder eine Textdatei schreiben oder aber in mehrere.

Muss das regelmäßig gemacht werden? Soll es ausgewertet werden, wenn ja wie (Excel....)?

1

Was möchtest Du wissen?