如何將一個檔案的權限複製到另一個檔案?

如何將一個檔案的權限複製到另一個檔案?

假設我有兩個文件:

-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

順便說一句,這一切都在手冊頁中

喬恩

--reference=RFILE 使用 RFILE 的擁有者和群組而不是指定 OWNER:GROUP 值

chmod

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

答案2

如果有問題的檔案上有擴充 ACL 的可能性,最好使用 getfacl/setfacl:

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

相關內容