22

How can I change Windows 7 file permissions using the command prompt?

I want to change permissions in program files, but cacls is not working for me.

studiohack
  • 13,468
  • 19
  • 88
  • 118
sam
  • 1,007
  • 2
  • 9
  • 6

6 Answers6

22

cacls is depcriated in Windows 7. You need to use ICACLS instead of cacls.

ICACLS "filename" /grant "Users":F

This command is granting the privileges.

slhck
  • 223,558
  • 70
  • 607
  • 592
saikanth
  • 229
  • 2
  • 3
7

To change permissions, use an administrator account on that machine to run CACLS. If you have UAC enabled, you may have to elevate the command prompt first by right-clicking on it and choosing "Run as Administrator".

You can use cacls as follows:

CACLS files /e /p {USERNAME}:{PERMISSION}

Where,

* /p : Set new permission
* /e : Edit permission and kept old permission as it is i.e. edit ACL instead of replacing it.
* {USERNAME} : Name of user
* {PERMISSION} : Permission can be:
      o R - Read
      o W - Write
      o C - Change (write)
      o F - Full control

For example, to grant your user account full (F) control to files, you would use the following command (typed in an elevated Windows command prompt):

CACLS files /e /p %USERNAME%:f

Read complete help by typing following command:

cacls /?
nhinkle
  • 37,198
  • 36
  • 140
  • 177
Thariama
  • 890
  • 1
  • 9
  • 21
4

If, for any reason, files have become disassociated with the administrator account in Windows 7, using ICACLS will NOT restore them.

You are forced to manually click EACH file, one at a time, and select Properties > Security tab > Advanced button > Permissions tab > Continue button.

If enabled, approve UAC prompt for Permissions Editor for Files and Folders and Uncheck Include inheritible permissions from thsi object's parent. Click the Remove button when prompted, then re-enable Include inheritible permissions, click OK.

This will restore your accesss to the file.

How can this be accomplished against an entire folder or set of files? Using ICACLS *.* /RESET does not work; it ends in error "Access is denied" for the files in question.

slhck
  • 223,558
  • 70
  • 607
  • 592
Some User
  • 41
  • 1
  • 3
    This is not a forum, so if you have a new question, please ask a new question using the big button above. – slhck Jun 10 '12 at 07:20
  • In think "Some User" information is important. I ended-up in this page looking for a way to fix bad permissions and his/her info was very relevant. But, since "Some User" post does not answer th PO question, this should be a comment or question instead of an answer. – Edenshaw Jul 10 '17 at 20:31
0

take ownership of the folder/files first then you work operations on same.

http://www.faqforge.com/windows/take-ownership-of-a-file-or-folder-by-command-in-windows/

Doc
  • 1
  • This is a link-only answer. Please include some of the information from the link in your answer using the built-in `> blockquote` syntax. – wizzwizz4 Jun 10 '17 at 09:02
  • This answer is about as helpful as *"The solution to your problem is here: [http://google.com](http://google.com)."* ‎ – ashleedawg Jun 13 '19 at 15:28
-1

you need to run cacls with administrator right in order to change permission in program files...

bubu
  • 9,863
  • 2
  • 29
  • 44
-1

icacls "File/folder_name" /grant "USER":F /t: will provide full access to the user specified as"USER" to the file or folder specified. The /t allows traversal to its sub-folders and files and provides the permission