如何使用Windows命令行授予用户对目录的权限(读、写、修改)?


当前回答

在Vista中,不支持使用cacls。以下是前几条帮助热线:

C:\>cacls
NOTE: Cacls is now deprecated, please use Icacls.

Displays or modifies access control lists (ACLs) of files

你应该使用icacls。这是你授予John对D:\test文件夹及其所有子文件夹的完全控制权的方式:

C:\>icacls "D:\test" /grant John:(OI)(CI)F /T

根据MS文档:

F =完全控制 CI =容器继承——该标志表示从属容器将继承此ACE。 OI = Object Inherit -该标志表示从属文件将继承ACE。 /T =递归应用到现有文件和子文件夹。(OI和CI只适用于新文件和子文件夹)。图片来源:@AlexSpence。

要获得完整的文档,您可以不带参数地运行“icacls”,或者在这里和这里查看Microsoft文档

其他回答

我为此挣扎了一段时间,只有结合这个帖子中的答案对我有效(在Windows 10上): 1. 打开cmd或PowerShell,进入有文件的文件夹 2. takeown /R /F 3.icacls * /T /grant dan:F

好运!

我无法打开驱动器中的任何文件,这个命令解锁了所有-

icacls i:\* /grant Users:F /t /q /c

使用Excel vba脚本提供和创建帐户。我需要授予文件夹和子文件夹的完整权限,这些文件夹和子文件夹是由工具使用我们的管理员'x'帐户创建给我们的新用户的。

Cacls看起来是这样的: C . cacls \FileServer\Users\Username /e /g域\Username

我需要将这段代码迁移到Windows 7及更高版本。我的解决方案是:

icacls \ filedata \Username /grant:r域用户名:(OI)(CI)F /t

/grant:r -授予指定用户访问权限。权限替换以前授予的显式权限。如果没有:r,权限将被添加到之前授予的任何显式权限

(OI)(CI) -此文件夹、子文件夹和文件。

F -完全访问

/t -遍历所有子文件夹以匹配文件/目录。

这给了我一个服务器上的文件夹用户只能看到这个文件夹并创建子文件夹,他们可以读写文件。以及创建新的文件夹。

使用cacls命令。请看这里的信息。

CACLS文件/e /p {USERNAME}:{PERMISSION} 在那里, /p:设置新的权限 /e:编辑权限并保留旧权限,即编辑ACL而不是替换它。 {USERNAME}:用户名 {PERMISSION}:权限可以是: R -读取 W -写 C -改变(写) F -完全控制 例如,用以下命令授予Rocky完全(F)控制权(在Windows命令提示符下输入): C:> CACLS files /e /p rocky:f 输入以下命令阅读完整帮助: C:> cacls /?

您也可以使用ICACLS。

赋予文件夹“Users”组“Full Control”权限。

>icacls "C:\MyFolder" /grant Users:F

为C:\MyFolder授予IIS用户修改权限(如果您需要,您的IIS具有将文件R/W到特定文件夹的能力):

>icacls "C:\MyFolder" /grant IIS_IUSRS:M

如果你做ICACLS /?您将能够看到所有可用的选项。