如何使用Windows命令行授予用户对目录的权限(读、写、修改)?
当前回答
我为此挣扎了一段时间,只有结合这个帖子中的答案对我有效(在Windows 10上): 1. 打开cmd或PowerShell,进入有文件的文件夹 2. takeown /R /F 3.icacls * /T /grant dan:F
好运!
其他回答
批量文件夹创建和授予权限的工作我使用下面的powershell脚本。
Import-Csv "D:\Scripts\foldernames.csv" | foreach-object {
$username = $_.foldername
# foldername is the header of csv file
$domain = “example.com”
$folder= "D:\Users"
$domainusername = $domain+“\”+$username
New-Item $folder\$username –Type Directory
Get-Acl $folder\$username
$acl = Get-Acl $folder\$username
$acl.SetAccessRuleProtection($True, $False)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("Administrators","FullControl", "ContainerInherit, ObjectInherit", "None", "Allow")
$acl.AddAccessRule($rule)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("SYSTEM","FullControl", "ContainerInherit, ObjectInherit", "None", "Allow")
$acl.AddAccessRule($rule)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("$domain\Domain Admins","Read", "ContainerInherit, ObjectInherit", "None", "Allow")
$acl.AddAccessRule($rule)
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule($domainusername,"Modify", "ContainerInherit, ObjectInherit", "None", "Allow")
$acl.AddAccessRule($rule)
Set-Acl $folder\$username $acl
}
注意:您必须在csv文件中创建相同的域用户名,否则您将遇到权限问题
我为此挣扎了一段时间,只有结合这个帖子中的答案对我有效(在Windows 10上): 1. 打开cmd或PowerShell,进入有文件的文件夹 2. takeown /R /F 3.icacls * /T /grant dan:F
好运!
我无法打开驱动器中的任何文件,这个命令解锁了所有-
icacls i:\* /grant Users:F /t /q /c
您也可以使用ICACLS。
赋予文件夹“Users”组“Full Control”权限。
>icacls "C:\MyFolder" /grant Users:F
为C:\MyFolder授予IIS用户修改权限(如果您需要,您的IIS具有将文件R/W到特定文件夹的能力):
>icacls "C:\MyFolder" /grant IIS_IUSRS:M
如果你做ICACLS /?您将能够看到所有可用的选项。
优秀点 卡林·达里
我有很多脚本使用调用,我把它们移动到icacls 我怎么也找不到一个脚本来改变根挂载卷的例子:d:\datafolder。我最终创建了下面的脚本,它将卷作为临时驱动器挂载,然后应用,然后卸载它。这是我发现可以更新根挂载安全性的唯一方法。
1获取文件夹挂载GUID到临时文件,然后读取GUID将卷挂载为临时驱动器X:应用sec并记录更改,然后仅从X:驱动器卸载卷,这样挂载的文件夹除了应用sec之外不会被更改或中断。
以下是我的脚本示例:
**mountvol "d:\%1" /L >tempDrive.temp && FOR /f "tokens=*" %%I IN (tempDrive.temp) DO mountvol X: %%I
D:\tools\security\icacls.exe %~2 /grant domain\group:(OI)(CI)F /T /C >>%~1LUNsec-%TDWEEK%-%TMONTH%-%TDAY%-%TYEAR%-%THOUR%-%TMINUTE%-%TAM%.txt
if exist x:\*.* mountvol X: /d**
推荐文章
- 在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