如何将一个文件的权限复制到另一个文件?

如何将一个文件的权限复制到另一个文件?

假设我有两个文件:

-rw-rw-r--  1 webapp webapp   215 Jun 21  2012 index.php
-rw-rw-rw-  1 root   root      58 Dec 17 11:02 patch.log

我想授予patch.log与 相同的权限index.php

我可以手动完成:

chown webapp:webapp patch.log
chmod 664 patch.log

但这应该是脚本的一部分,我不一定知道确切的权限是什么index.php

有没有办法将给定文件的权限复制到另一个文件?

答案1

您可以使用文件作为 chown 和 chmod 的参考文件

chown --reference=index.php patch.log
chmod --reference=index.php patch.log

顺便说一下,这一切都在手册页中

chown

--reference=RFILE 使用 RFILE 的所有者和组,而不是指定 OWNER:GROUP 值

修改模式

--reference=RFILE 使用 RFILE 的模式而不是 MODE 值

答案2

如果相关文件有可能扩展 ACL,最好使用 getfacl/setfacl:

getfacl index.php | setfacl --set-file=- patch.log

相关内容