Я новичок в Powershell, и мне нужно знать, как составить список всех разрешений для папки для конкретного пользователя.Это то, что я обнаружил до сих пор:
$ReferenceAccountName = 'DOMAIN\Username'
[string[]]$SearchDirectories
= @('X:\SomeDirectory', 'F:\AnotherDirectory')
foreach ($RootDir in $SearchDirectories) {
$DirACL = Get-Acl -Path $RootDir
foreach ($ACL in $DirACL.Access){
if ($ACL.IdentityReference -like $ReferenceAccountName){
Write-Output $RootDir
}
}
foreach ($Directory in (Get-ChildItem -Path $RootDir -Recurse | `
Where-Object -FilterScript {$_.Attributes `
-contains 'Directory'})){
$DirACL = Get-Acl -Path $Directory.FullName
foreach ($ACL in $DirACL.Access){
if ($ACL.IdentityReference -like $ReferenceAccountName){
Write-Output $Directory.FullName
}
}
} }
Однако это не возвращает никакого значения с помощью команды Write-Output.Изменение его на Write-Host также не сработало.Я скучаю по некоторым важным деталям?
Я использую Powershell V2.0