综合命令
@echo off
set "target=D:\100"
takeown /f "%target%" /r /d y
icacls "%target%" /grant "abc.com\a:(oi)(ci)(F)" /t /c /q
icacls "%target%" /grant "abc.com\b:(oi)(ci)(F)" /t /c /q
echo 所有权和权限已更新!
pause
取得 D:\001 目录及其所有子目录和文件的所有权 (将文件夹的所有者修改为当前用户)
takeown /f "D:\001" /r /d y
如果您希望将所有权赋予管理员组而不是当前用户:
takeown /f "D:\001" /a /r /d y
参数说明
takeown 命令的基本语法如下:
takeown /f [/s [/u [\\] [/p []]]]
参数详解:
/f : 必需。指定目标文件或目录的名称。可以是本地或网络路径。
/s : 可选。指定远程计算机的名称或 IP 地址。
/u [\\]: 可选。以指定的用户帐户权限执行命令。如果未指定域,则使用本地计算机帐户。
/p []: 可选。指定用户帐户的密码。
进阶选项
/a: 将文件或目录的所有权赋予管理员组,而不是当前用户。
/r: 递归地将所有权应用于指定目录下的所有文件和子目录。
/d : 指定拒绝访问时的默认操作。如果设为 y(yes),则在拒绝访问时默认接受(即接管所有权);如果设为 n(no),则在拒绝访问时拒绝操作。
……………………………………………………………………………………………………………………………………………………………………………
赋予用户组domain Admins 对文件夹001 完全控制权限
icacls "D:\001" /grant "abc.com\Domain Admins":(oi)(ci)(F) /t /c /q
(OI) - 对象继承。 此容器中的对象将继承此 ACE。 仅适用于目录。
(CI) - 容器继承。 此父容器中的容器将继承此 ACE。 仅适用于目录。
移除文件夹001所有用户、组的权限
icacls "D:\001" /remove * /T /C
一、icacls命令的基本语法
icacls "文件名或目录名" [/grant 用户名:权限] [/deny 用户名:权限] [/remove 用户名] [/save 文件名] [/restore 文件名] [/setowner 用户名] [/T] [/C] [/L] [/Q]
文件名或目录名:指定要修改权限的文件或目录的路径。
/grant 用户名:权限:为用户或组授予指定的权限。
/deny 用户名:权限:拒绝用户或组访问指定的权限。
/remove 用户名:从ACL中删除用户或组的所有条目。
/save 文件名:将ACL保存到指定的文件中,供将来恢复使用。
/restore 文件名:从保存的文件中恢复ACL。
/setowner 用户名:更改文件或目录的所有者。
/T:递归地处理所有指定目录及其子目录中的文件。
/C:在出现错误时继续执行操作。
/L:对符号链接本身进行操作,而不是对链接指向的目标进行操作。
/Q:以安静模式运行,不显示成功消息。
二、可授予的权限
F:完全控制
M:修改
RX:读取和执行
R:只读
W:只写
这些权限允许用户对文件或目录进行不同程度的访问和操作。
三、操作实例
示例1:查看文件或目录的权限
icacls "C:\example\folder"
此命令将显示C:\example\folder目录及其所有子目录和文件的当前权限设置。
示例2:授予用户完全控制权限
icacls "C:\example\file.txt" /grant 用户名:F
此命令将授予指定用户(将“用户名”替换为实际用户名)对C:\example\file.txt文件的完全控制权限。
示例3:拒绝用户写入权限
icacls "C:\example\folder" /deny 用户名:W
此命令将拒绝指定用户对C:\example\folder目录及其子目录和文件的写入权限。
示例4:删除用户的权限
icacls "C:\example\file.txt" /remove 用户名
此命令将从C:\example\file.txt文件的ACL中删除指定用户的所有权限条目。
示例5:保存和恢复ACL
icacls "C:\example\folder" /save aclfile.txt
icacls "C:\example\folder" /restore aclfile.txt
首先,第一个命令将C:\example\folder目录及其子目录的ACL保存到aclfile.txt文件中。然后,第二个命令使用aclfile.txt文件中的ACL设置来恢复C:\example\folder目录及其子目录的原始权限。