如何讓 chown 只影響資料夾,而不影響文件?

如何讓 chown 只影響資料夾,而不影響文件?

我必須 chmod 子資料夾的結構,其中自然包含更多子資料夾和檔案。

現在我需要以相同的方式更改此完整結構的存取權限(所有者:群組,此時沒有 acl)。只是我想要 775 用於資料夾,但 664 用於文件。我怎樣才能做到這一點?man chown似乎沒有給出解決方案,所以我想到了一個管道find並且chown可以做到。我對管道的了解非常基礎。我認為您給出一個命令並通過第二個命令發送該命令的輸出。

find -type d | chmod -R 775 *

是我的猜測,但不尊重我的find命令的輸出。 chown 命令中的「*」可能會在find某種程度上推翻輸出

有什麼想法如何調整這個對我有利嗎?

答案1

使用-R標誌chmod,使其遞歸(適用於參數中包含的所有資料夾和檔案)。使用:

find . -type d -exec chmod 775 {} +

答案2

更新:我讀錯了,請參閱@muru's 不要使用-R 這可能有效:

chmod 775 $(find -type d)

它被稱為命令替換

相關內容