首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用变量调用icacls时,参数无效。

使用变量调用icacls时,参数无效。
EN

Stack Overflow用户
提问于 2013-06-10 08:04:00
回答 1查看 3.9K关注 0票数 0

当我在Powershell ISE中运行这个脚本时:

代码语言:javascript
复制
[System.Threading.Thread]::CurrentThread.CurrentCulture = 'en-us'
$folder = Read-Host 'Dove sono le cartelle degli utenti?'
$name = Read-Host 'Specificare la cartella dell utente?'
takeown /f $folder\$name /r /d Y
icacls $folder\$name /t /c /grant T135837TS:F /q
icacls $folder\$name /grant ([String]($name.replace(".V2",""))):F /t /c /q

我知道这个错误:

代码语言:javascript
复制
icacls : Invalid parameter "npac001"
At line:1 char:1
+ icacls $folder\$name /grant ([String]($name.replace(".V2",""))):F /t /c /q
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (Invalid parameter "npac001":String) [],  RemoteException
+ FullyQualifiedErrorId : NativeCommandError

其中npac001是必须具有该权限的用户。

EN

回答 1

Stack Overflow用户

发布于 2013-06-10 09:22:10

您的问题是,icacls没有将用户和访问保护规则(:f)视为一个参数。

试着将单引号放在以下部分:

代码语言:javascript
复制
 icacls $folder\$name /grant '([String]($name.replace(".V2","")))':F /t /c /q

尝试在将访问保护规则交给icacls之前创建它,例如:

代码语言:javascript
复制
$user = ([String]($name.replace(".V2","")))
$rule = "'$user':f"
icacls "C:\folder" /grant $rule /t /c /q

注意:在给定的访问类型(如:f )之前,将用户周围的单引号放在。因此,在传递给icacls之前,$rule应该是这样的。"'npac001':f"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17019371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档