http://www.cyberciti.biz/faq/how-to-copy-permissions-from-one-file-to-another-on-linux
I need to copy or clone file ownership and permissions from another file on Linux. Is there a bash command line option to clone the user, group ownership and permissions on a file from another file on Linux operating system?
To set file owner and group use chown command. To change file mode, bits (permissions) use chmod command. Both commands accept an option to use another file as a reference is known as RFILE.
Sample outputs:
Verify it:
Sample outputs:
You can combine and use find and xargs as follows:
Sample outputs:
I need to copy or clone file ownership and permissions from another file on Linux. Is there a bash command line option to clone the user, group ownership and permissions on a file from another file on Linux operating system?
To set file owner and group use chown command. To change file mode, bits (permissions) use chmod command. Both commands accept an option to use another file as a reference is known as RFILE.
Syntax to clone permissions from another file or directory on Linux
The syntax is as follows use RFILE’s mode instead of MODE values:chmod --reference=RRFILE FILE
chmod [options] --reference=RRFILE FILE
Examples: Copy file permission, but not files
Let us list both files:ls -l install58.iso xenial-server-amd64.iso
Sample outputs:
-rw-rw-rw- 1 libvirt-qemu kvm 230862848 Aug 16 2015 install58.iso -rw-r--r-- 1 libvirt-qemu kvm 786432000 Mar 14 02:01 xenial-server-amd64.isoTo copy install58.iso file permission to xenial-server-amd64.iso, enter:
chmod --reference=install58.iso xenial-server-amd64.iso
Verify it:
ls -l install58.iso xenial-server-amd64.iso
Sample outputs:
-rw-rw-rw- 1 libvirt-qemu kvm 230862848 Aug 16 2015 install58.iso -rw-rw-rw- 1 libvirt-qemu kvm 786432000 Mar 14 02:01 xenial-server-amd64.isoYou can specify multiple files too:
chmod --reference=file.txt dest1.txt dest2.txt dest3.conf
You can combine and use find and xargs as follows:
find /path/to/dest/ -type f -print0 | xargs -O -I {} chmod --reference=/path/to/rfile.txt {}
Syntax to clone ownership from another file or directory on Linux
The syntax is as follows to use RRFILE’s owner and group rather than specifying OWNER:GROUP valueschown --reference=RRFILE FILE
chown [options] --reference=RRFILE FILE
Examples: Copy file ownership, but not files
To copy install58.iso file user and group onwership to xenial-server-amd64.iso, enter:chown --reference=install58.iso xenial-server-amd64.iso
ls -l
Sample outputs:
No comments:
Post a Comment