![PowerShell 从命令行设置文件夹/目录的权限](https://linux22.com/image/1596710/PowerShell%20%E4%BB%8E%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%AE%BE%E7%BD%AE%E6%96%87%E4%BB%B6%E5%A4%B9%2F%E7%9B%AE%E5%BD%95%E7%9A%84%E6%9D%83%E9%99%90.png)
有没有更好/更简单的方法从命令行设置 Windows 文件夹的权限?
我正在使用 powershell、get-acl 和 set-acl。
# Set permissions on a folder using powershell, get-acl and set-acl.
# make directory before settings permissions. setting permissions code creates file.
# if the user has no permissions on the folder run this script in a window with admin privileges.
# windows 10
# powershell 5
# change zpath and zuser
$zpath="F:\Users\Default\Documents\_NOTEPAD++ AUTOBACKUP"
$zuser="_9doug"
If(!(test-path $zpath)){New-Item -ItemType directory -Path $zpath | Out-Null}
$Acl = Get-Acl $zpath
$Ar = New-Object System.Security.AccessControl.FileSystemAccessRule($zuser, "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow")
$Acl.SetAccessRule($Ar)
Set-Acl $zpath $Acl
exit
答案1
Windows 10 64 位。
使用 icacls。如果用户不存在于对象上,则不需要管理员权限。
授予用户完全权限:
icacls "%userprofile%\Documents\021219" /inheritance:d /grant:r %username%:(OI)(CI)F /T
删除用户:
icacls "%userprofile%\Documents\021219" /remove %UserName%
帮助:
icalcs /?
从命令行授予用户完全权限。
从命令行删除用户。