Windows系统中修改文件权限

我在windows系统中安装了cygwin软件,在C盘下生成了cygwin64文件夹。由于该文件夹的拥有者和权限问题,导致用Administrator无法删除该文件夹。此时,需要修改文件夹的拥有者和权限后,才能删除cygwin64文件夹。

1. 使用windows窗口界面修改权限

首先,修改拥有者权限:登录到Administrator用户,右击要删除的文件或文件夹——属性——安全——高级——更改(蓝色字体)——点击输入框”输入要选择的对象名称”——输入用户名”Administrator”——确定——确定。

只有修改了拥有者权限后,才能对新增加的拥有者设置读写权限:右击要删除的文件或文件夹——属性——安全——高级——添加——选择主题(蓝色字体)——点击输入框”输入要选择的对象名称”——输入用户名”Administrator”——确定——勾选完全控制——确定——确定——确定。

进行以上两步操作后,则可以删除目标文件夹下的所有文件。但是不能删除目标文件夹下的子文件夹。这点非常坑。由于cygwin64文件夹下有很多层目录,可能要对数千个文件夹进行上述操作,才能删除所有文件和文件夹,通过windows窗口界面基本不可能实现了。

2. 通过命令行修改权限

windows系统中按windows+x键,点击Windows PowerShell打开终端,输入两个命令分别对文件夹修改拥有者和读写权限:

takeown.exe /F C:\cygwin64\ /A /R /D Y
    /F <strint>  参数后接一个路径,用于对指定文件或文件夹进行拥有者权限设置。
    /A  将所有权给予管理员组,而不是当前用户。
    /R  递归,将拥有者权限设置赋予子目录及其文件。
    /D <strint>  设置其值为Y后,表示使用/R进行递归时所有问询值都为Yes。 

icacls.exe C:\cygwin64\ /grant Administrator:F /T
    /grant <string>  授予指定用户相应的权限。其值格式为“用户ID:权限符号”,其中F表示所有权限。
    /T  递归,将权限赋予子目录及其文件。

进行以上操作后,则可以正常删除C:\cygwin64\文件夹了。