如何使用Windows命令行授予用户对目录的权限(读、写、修改)?
当前回答
我尝试了下面的方法,对我来说很有效: 1. 打开用于cmd . exe 2. takeown /R /F *.* 3.icacls * /T /grant [username]:(D) 4. 德尔*。* / s / q
这样文件就可以成为我自己的访问权限,并分配给“删除”,然后我就可以删除文件和文件夹。
其他回答
使用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 /?
Windows 10中没有“c:>”和“>”
例如:
F = Full Control
/e : Edit permission and kept old permission
/p : Set new permission
/e /p用户名:F
(这也修复了错误2502和2503)
C:\Windows\Temp /e /p用户名:F
损坏权限:重新获得对文件夹及其子对象的访问权
虽然这个问题的大部分答案都有一定的价值,但恕我直言,没有一个答案是完整的。下面(可能)是Windows 7的一个完美的解决方案,如果你被损坏的权限设置锁定的文件夹:
icacls "c:\folder" /remove:d /grant:r Everyone:(OI)(CI)F /T
对于Windows 10,用户/SID必须在/remove:d选项后指定:
icacls "c:\folder" /remove:d Everyone /grant:r Everyone:(OI)(CI)F /T
. 注:
The command is applied to the specified directory. Specifying the user "Everyone" sets the widest possible permission, as it includes every possible user. The option "/remove:d" deletes any explicit DENY settings that may exist, as those override explicit ALLOW settings: a necessary preliminary to creating a new ALLOW setting. This is only a precaution, as there is often no DENY setting present, but better safe than sorry. The option "/grant" creates a new ALLOW setting, an explicit permission that replaces (":r") any and all explicit ALLOW settings that may exist. The "F" parameter (i.e. the permission created) makes this a grant of FULL control. The "/T" parameter adds recursion, applying these changes to all current sub-objects in the specified directory (i.e. files and subfolders), as well as the folder itself. The "(OI)" and "(CI)" parameters also add recursion, applying these changes to sub-objects created subsequently. .
附录(2019/02/10)-
上面的Windows 10命令行是今天好心推荐给我的,所以就在这里。我还没有Windows 10来测试它,但是如果你有的话请尝试一下(然后请在下面发表评论)。
第一步更改只涉及删除DENY设置。可能没有任何DENY设置,所以该选项可能没有区别。我的理解是,在Windows 7上,你不需要在/remove:d后指定用户,但我可能错了!
.
附录(2019/11/21)-
用户astark建议将Everyone替换为术语*S-1-1-0,以便命令独立于语言。我只有英文版的Windows安装,所以我不能测试这个建议,但它似乎是合理的。
使用资源管理器导航到要设置权限的顶级目录 在资源管理器窗口的地址栏中输入CMD 输入icacls。(OI)(CI)F /T,其中John是用户名 利润
只是加上这一点,因为这样做似乎非常简单,其他人可能会获利——所有功劳都归于clin Darie。
您也可以使用ICACLS。
赋予文件夹“Users”组“Full Control”权限。
>icacls "C:\MyFolder" /grant Users:F
为C:\MyFolder授予IIS用户修改权限(如果您需要,您的IIS具有将文件R/W到特定文件夹的能力):
>icacls "C:\MyFolder" /grant IIS_IUSRS:M
如果你做ICACLS /?您将能够看到所有可用的选项。
推荐文章
- 在Sublime Text 2中使用Ctrl+D进行多个选择时,我如何跳过匹配?
- #定义WIN32_LEAN_AND_MEAN具体排除了什么?
- 如何添加一个设置路径只执行批处理文件?
- 最好的轻量级web服务器(只有静态内容)的Windows
- npm犯错!错误:EPERM:操作不允许,重命名
- 崇高的文本从命令行
- 如何保持Python脚本输出窗口打开?
- 使用.bat文件检查文件夹是否存在
- 如何查看Windows库(*.lib)的内容
- 在Windows中删除大文件夹最快的方法是什么?
- NPM卡住给出相同的错误EISDIR:对目录的非法操作,读取错误(本机)
- Windows 10环境变量太大
- 如何使用Windows命令行更改目录
- 如何在NERDTree中显示隐藏文件(以句点开始)?
- Objective-C for Windows