chown

Change owner, change the user and/or group ownership of each given File to a new Owner.
Chown can also change the ownership of a file to match the user/group of an existing reference file.

SYNTAX
      chown [Options]... NewOwner File...

      chown [Options]... :Group File...

      chown [Options]... --reference=RFILE File...

   If used, NewOwner specifies the new owner and/or group as follows
   (with no embedded white space):

     [OWNER] [ [:.] [GROUP] ]

   Some examples of how the owner/group can be specified:

     OWNER
     If only an OWNER (a user name or numeric user id) is given, that
     user is made the owner of each given file, and the files' group is
     not changed.

     OWNER.GROUP
     OWNER:GROUP
     If the OWNER is followed by a colon or dot and a GROUP (a group
     name or numeric group id), with no spaces between them, the group
     ownership of the files is changed as well (to GROUP).

     OWNER.
     OWNER:
     If a colon or dot but no group name follows OWNER, that user is
     made the owner of the files and the group of the files is changed
     to OWNER's login group.

     .GROUP
     :GROUP
     If the colon or dot and following GROUP are given, but the owner
     is omitted, only the group of the files is changed; in this case,
     'chown' performs the same function as 'chgrp'.

OPTIONS:

   -c
   --changes
       Verbosely describe the action for each FILE whose ownership actually changes.

   --dereference
       Do not act on symbolic links themselves but rather on what they point to.

   -f
   --silent
   --quiet
       Do not print error messages about files whose ownership cannot be changed.
    

   -h
   --no-dereference
       Act on symbolic links themselves instead of what they point to.
       This is the default.  This mode relies on the 'lchown' system call.
       On systems that do not provide the 'lchown' system call, 'chown'
       fails when a file specified on the command line is a symbolic link.
       By default, no diagnostic is issued for symbolic links encountered
       during a recursive traversal, but see '--verbose'.

   --reference=FILE
       Use the user and group of the reference FILE instead of an explicit
       NewOwner value.

   -R
   --recursive
       Recursively change ownership of directories and their contents. 
       Take care to not run recursive chown on the root '/' directory or any other system directory.

   -v
   --verbose
       Verbosely describe the action (or non-action) taken for every FILE.
       If a symbolic link is encountered during a recursive traversal on a system without
       the 'lchown' system call, and '--no-dereference' is in effect, then issue a
       diagnostic saying neither the symbolic link nor its referent is being changed.

Examples

Assign Ursula as the owner of "MyFile.txt" file in the Shared directory.

$ sudo chown Ursula /Users/Shared/MyFile.txt

Assign Ursula as the owner, and staff as the group for everything in the "tmp" folder

$ sudo chown -R Ursula:staff /Users/Shared/tmp/

Change the owner of only the hidden files (prefixed with .) in the folder Work:

chown -R .* goes up as well as down
So,
sudo chown -R audrey /Work/.*
Will be expanded by the shell to:
sudo chown -R audrey /Work/. /Work/.. /Work/.bash_history

In other words chown -R audrey /Work/.. is equivalent to chown -R audrey /
Which we do not want!

The correct way to set this:

sudo chown -R audrey /Work/.[^.]*

“It is in men as in soils where sometimes there is a vein of gold which the owner knows not” ~ Jonathan Swift

Related linux commands

chgrp - Change group ownership.
chmod - Change access permissions.
bash syntax - Permissions
Equivalent Windows command: XCACLS - Change file permissions.


 
Copyright © 1999-2024 SS64.com
Some rights reserved