Перечислить ACL текущего каталога с помощью power shell

#windows #shell #scripting #acl #get-childitem

#Windows #оболочка #сценарии #acl #получить -дочерний элемент

Вопрос:

Мне было поручено следующее задание. Создайте foreachloop . Вы можете использовать следующий шаблон:

 $directory-variable-here
  foreach ($item in $directory) {
     Script block here
}
  

Над foreachcondition , установите переменную, $directory, для содержимого текущего каталога.
Замените заполнитель блока сценария командой для перечисления ACL файла, используя $itemvariable вместо имени файла.
Вам нужно будет использовать следующие командлеты:
Get-ChildItem(или любой псевдоним Get-ChildItem, например, lsor dir)
Получить-Acl

Мне нужна помощь, чтобы решить эту проблему. Во-вторых, что можно использовать для хранения текущего пути к каталогу, я в замешательстве.

До сих пор я пробовал следующий скрипт, но он возвращает содержимое текущего каталога только не для подкаталогов.

 $dirpath= $PSScriptRoot


foreach ($item in $dirpath){
    $var = Get-ChildItem $item
    Get-Acl $var
}
  

Ответ №1:

Я много пробовал, и после некоторых поисков я нашел решение, вот сценарий

 $mypath= $PSScriptRoot

$var = Get-ChildItem -Recurse -Path $mypath
foreach ($item in $var){
    Get-Acl $item.FullName
    
}