lima-city: Webhosting, Domains und Cloud
0 Pluspunkte 0 Minuspunkte

Ich habe dieses Script um alle Fileserver Berechtigungen in einem Ordner rekursiv anzuzeigen.

$sharepath = "\\fileserver\public"
$folders = dir $sharepath -recurse | Where-Object { $_.psisontainer -eq $true }
foreach($folder in $folders) {
	$acls = Get-Acl $folder.FullName | Foreach-Object { $_.Access }
	foreach($acl in $acls) {
		Write-Output "$($folder.FullName);$($acl.IdentityReference);$($acl.FileSystemRights);$($acl.IsInherited)"
	}
}
pause

Allerdings kommt zuerst einmal endlos lange gar keine Ausgabe und am Schluss kommt alles auf einmal. Wie kann ich machen das nach jedem Ordner in Echtzeit eine Statuszeile ausgegeben wird? Ich habe es auch schon mit Write-Host versucht, da kommt das selbe raus.

von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Dieses Script sollte dir die Zeilen in Echtzeit ausgeben. Es nutzt einen .NET TextWriter und der kann puffern (also Text erst sammeln und später wirklich rausschreiben).

$sharepath = "\\fileserver\public"

Get-ChildItem $sharepath -Recurse -Directory | ForEach-Object {
    $folder = $_
    try {
        foreach ($acl in (Get-Acl $folder.FullName).Access) {
            [Console]::WriteLine(
              "$($folder.FullName);$($acl.IdentityReference);$($acl.FileSystemRights);$($acl.IsInherited)"
            )
        }
        [Console]::Out.Flush()
    } catch {
        [Console]::WriteLine("FEHLER;$($folder.FullName);$($_.Exception.Message)")
    }
}
pause

  • WriteLine() schreibt in den Writer (landet ggf. erst im Puffer) 
  • Flush() zwingt den Writer, den Puffer sofort zu leeren und an die Konsole zu übergeben
von (792 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Fragen und Antworten bewerten
  • Themen von Fragen bearbeiten
  • Fragen, Antworten und Kommentare bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft.

2,562 Fragen

3,081 Antworten

281 Kommentare

14 Nutzer