1

我正在使用 powershell 删除文件夹权限。我的代码是这样的

$folder = "\\myServer\C$\myFolder";
$folder_acl = Get-Acl $folder;
$permission_toDelete = $folder_acl.Access | where{  <# selection operation #> }
$permission_toDelete | Foreach-Object { $folder_acl.RemoveAccessRule($_) }

此代码返回很多True,但实际上并没有更改权限。我正在使用的用户是该服务器上的管理员。我也尝试用这段代码删除继承,$folder_acl.SetAccessRuleProtection($true, $false);但仍然有问题

4

1 回答 1

3

剩下的就是将当前的 acl(删除后)通过管道传输到Set-Aclcmdlet:

$folder_acl | Set-Acl

所有 True 输出是每个删除的 acl 的返回值。如果你愿意,你可以压制它:

$folder_acl.RemoveAccessRule($_) | Out-Null
于 2013-06-19T09:20:51.827 回答