Ami*_*abh 251 windows file-permissions command-prompt
如何使用Windows命令行向目录上的用户授予权限(读取,写入,修改)?
Căl*_*rie 385
截至Vista,cacls
已被弃用.这是前几个帮助热线:
C:\>cacls
NOTE: Cacls is now deprecated, please use Icacls.
Displays or modifies access control lists (ACLs) of files
Run Code Online (Sandbox Code Playgroud)
你应该使用icacls
.这就是你授予John对D:\test
文件夹及其所有子文件夹的完全控制权的方法:
C:\>icacls "D:\test" /grant John:(OI)(CI)F /T
Run Code Online (Sandbox Code Playgroud)
根据MS文件:
F
=完全控制CI
= Container Inherit - 此标志指示从属容器将继承此ACE.OI
= Object Inherit - 此标志指示从属文件将继承ACE./T
=递归应用于现有文件和子文件夹.(OI
并且CI
仅适用于新文件和子文件夹).信用:@AlexSpence发表评论.有关完整文档,您可以在icacls
没有参数的情况下运行" " ,也可以在此处和此处查看Microsoft文档
Vin*_*n.X 72
您也可以使用ICACLS.
要将Users组完全控制权授予文件夹:
>icacls "C:\MyFolder" /grant Users:F
Run Code Online (Sandbox Code Playgroud)
向IIS用户授予修改权限C:\MyFolder
(如果您需要IIS具有将R/W文件转换为特定文件夹的能力):
>icacls "C:\MyFolder" /grant IIS_IUSRS:M
Run Code Online (Sandbox Code Playgroud)
如果你做ICACLS /?您将能够看到所有可用选项.
Sir*_*dda 20
打开命令提示符,然后执行以下命令:
icacls "c:\somelocation\of\path" /q /c /t /grant Users:F
F
提供完全访问权限
/q /c /t
将权限应用于子文件夹.
注意:有时"以管理员身份运行"会有所帮助.
小智 11
我尝试以下方式,它适用于我:
1.打开cmd.exe
2. takeown /R /F *.*
3. icacls * /T /grant [username]:(D)
4.del *.* /S /Q
这样文件就可以成为我自己的访问权限并分配给"删除",然后我可以删除文件和文件夹.
我为此苦苦挣扎了一段时间,只结合了这个线程中的答案对我
有用(在 Windows 10 上):
1. 打开 cmd 或 PowerShell 并转到包含文件的文件夹
2. takeown /R /F 。
3. icacls * /T /grant dan:F
祝你好运!
损坏的权限:重新获得对文件夹及其子对象的访问权限
尽管大多数回复该问题的答案都有其优点,但恕我直言,它们都没有提供完整的解决方案。如果您被损坏的权限设置锁定了文件夹,则以下(可能是)Windows 7的完美解决方案:
icacls "c:\folder" /remove:d /grant:r Everyone:(OI)(CI)F /T
Run Code Online (Sandbox Code Playgroud)
对于Windows 10,必须在以下/remove:d
选项后指定用户/ SID :
icacls "c:\folder" /remove:d Everyone /grant:r Everyone:(OI)(CI)F /T
Run Code Online (Sandbox Code Playgroud)
。
注意事项:
该命令将应用于指定目录。
指定用户“每个人”设置了最大可能的权限,因为它包括每个可能的用户。
选项“ / remove:d”将删除可能存在的任何明确的DENY设置,因为这些设置将覆盖明确的ALLOW设置:这是创建新ALLOW设置的必要前提。这仅是一种预防措施,因为通常没有DENY设置,但是比后悔更安全。
选项“ / grant”创建一个新的ALLOW设置,一个显式权限替换(“:r”)可能存在的任何和所有显式ALLOW设置。
“ F”参数(即创建的权限)使它具有FULL控制权。
“ / T”参数添加递归,将这些更改应用于指定目录中的所有当前子对象(即文件和子文件夹)以及文件夹本身。
参数“(OI)”和“(CI)”也添加了递归,将这些更改应用于随后创建的子对象。
。
增编(2019/02/10) -
在Windows 10的命令行上面今天好心建议我,所以在这儿呢。我还没有Windows 10对其进行测试,但是如果您有,请尝试一下(然后请在下面发表评论)。
更改仅涉及删除DENY设置作为第一步。可能没有任何DENY设置,因此该选项可能没有任何区别。我的理解是,在Windows 7上,不需要在/ remove:d之后指定用户,但是我对此可能是错的!
。
增编(2019/11/21) -
astark用户建议用* S-1-1-0 代替Everyone,以使命令独立于语言。我只有英文安装的Windows,因此无法测试该建议,但这似乎是合理的。
归档时间: |
|
查看次数: |
852033 次 |
最近记录: |