Benutzer mit den meisten Antworten
Powershell: Auswertung mit mehreren Feldern aus unterschiedlichen cmdlet

Frage
-
Hallo,
ich brauche ein Auswertung aller meiner Freigaben. Mit folgendem Befehl bekomme ich "fast" genau das was ich brauche:
Get-SmbShare -name * | sort name | Get-SmbShareAccess | ft Name, AccountName, AccessRight, Path
Mein Problem ist das Feld "Path", dieses gibt es im cmdlet: Get-SmbShareAccess nicht, sondern kommt im cmdlet: Get-SmbShare vor.
Wie kann ich einen Feldinhalt über mehrere cmdlet übertragen?
Danke
Antworten
-
Moin,
elegant? Nur mit Schleifen, etwa:
foreach ($share in (Get-SmbShare -Name * | Sort Name)) { $share | Get-SmbShareAccess | Foreach-Object { [PSCustomObject]@{ 'Path' = $share.Path 'AccountName' = $_.AccountName 'AccessRight' = $_.AccessRight } } }
Evgenij Smirnov
- Als Antwort vorgeschlagen BOfH-666 Montag, 23. März 2020 16:54
- Als Antwort markiert Denniver ReiningMVP, Moderator Freitag, 27. März 2020 09:08
Alle Antworten
-
Moin,
elegant? Nur mit Schleifen, etwa:
foreach ($share in (Get-SmbShare -Name * | Sort Name)) { $share | Get-SmbShareAccess | Foreach-Object { [PSCustomObject]@{ 'Path' = $share.Path 'AccountName' = $_.AccountName 'AccessRight' = $_.AccessRight } } }
Evgenij Smirnov
- Als Antwort vorgeschlagen BOfH-666 Montag, 23. März 2020 16:54
- Als Antwort markiert Denniver ReiningMVP, Moderator Freitag, 27. März 2020 09:08