繁体   English   中英

使用Powershell中文本文件中的规则使用icacls设置权限

[英]Set permissions with icacls with rules from a textfile in powershell

我正在尝试在Powershell中使用Icacls来设置本地权限。 我有一个文本文件,可以从中获取权限。 我这样做是因为我想更改很多文件夹的权限,并且不想每次都更改脚本。

文本文件如下所示(使用德语名称):

/grant:r SYSTEM:(OI)(CI)(F) /grant:r Administratoren:(OI)(CI)(F) /grant:r mydomain\Domänen-Admins:(OI)(CI)(F) /inheritance:r
/grant:r mydomain\user1:(OI)(CI)(R) /grant:r myodomain\user2:(OI)(CI)(C)   
/grant:r mydomain\user2:(OI)(CI)(F) /deny mydomain\user2:(DE)

我的代码如下所示:

$AccessLine=cat .\Lines.txt
$ica=$AccessLine[0..2]
icacls.exe $path "ica"     #$path is the path of folder which should be modified

它总是说给定无效的参数。 我无法与icacls $ path一致地编写/ grant:r部分,因为我还需要设置/ deny权限。 我只想用一个命令设置所有权限。 这可能吗?

您有3组命令需要运行。 $ica=$AccessLine[0]行有效,因为您仅调用其中之一。 您正在请求一个循环,以便可以处理每一行。

$AccessLines = cat .\Lines.txt
$AccessLines | ForEach-Object{& icacls.exe $path $_} 

FWIW catGet-Content的别名,它以行数组形式返回文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM