Powershell-使用文本文件中的行设置Acl

Powershell-使用文本文件中的行设置Acl,powershell,Powershell,我正在尝试使用以下结构为几千个子文件夹设置权限: G:\Jobs\10\100001\子文件夹1 G:\Jobs\10\100002\子文件夹1 G:\Jobs\10\100003\子文件夹1 G:\Jobs\10\100004\子文件夹1 我已经创建了一个txt文件,在每一行上都有如上所述的完整路径,并且我使用了: 获取Acl G:\PermissionTemplate |设置Acl'G:\Jobs\10\100001\Subfolder1' 这很好用,完全符合我的需要。问题是我需要修改其

我正在尝试使用以下结构为几千个子文件夹设置权限:

  • G:\Jobs\10\100001\子文件夹1
  • G:\Jobs\10\100002\子文件夹1
  • G:\Jobs\10\100003\子文件夹1
  • G:\Jobs\10\100004\子文件夹1
我已经创建了一个txt文件,在每一行上都有如上所述的完整路径,并且我使用了:

获取Acl G:\PermissionTemplate |设置Acl'G:\Jobs\10\100001\Subfolder1'

这很好用,完全符合我的需要。问题是我需要修改其他3478个文件夹。PS不是我的强项,我真的很难得到任何东西,比如,获取内容或ForEach对象等等

一个巨大的虚拟high-5和虚拟巧克力鱼,适合任何能帮助我的人:)


干杯

如果文件夹位于同一目录中,您可以尝试:
foreach($中的文件夹(Get ChildItem-Directory\\GDrive\Jobs\10-Depth 2)){$Acl=Get Acl$Folder.FullName$Acl.SetAccessRule($Rule)Set Acl$Folder.FullName$Acl}
其中
$Rule
将是访问规则。谢谢,您是否能够将语句静音:“其中$Rule将是访问规则。”?这将是您的权限(规则):
Get Acl G:\PermissionTemplate
,因此您只需将其设置为变量
$Rule
。如果这有意义(:没有,但我会继续尝试解决它!非常感谢您的快速响应。我今天没有时间了,但明天第一件事就会回来。假设“我创建了一个txt文件”名为
\Folders.txt
,命令将是:
获取内容。\Folders.txt | ForEach对象{Get Acl G:\PermissionTemplate | Set Acl$\u0}