Find

多個子目錄中 400,000 個文件的 chmod?

  • December 7, 2010

你好…我正在尋找 chmod 777 一大堆文件。或者,因為它更安全,我也可以滿足這些文件的 chown www:www 以使它們可以通過網路訪問。

現在,由於我有超過 400,000 個文件,sudo chmod -R 777 ./*而且sudo chown -R www:www ./*根本沒有工作,只返回“Arg list too long”

出現了一些Google搜尋findxargs,但這對我的文件集不太適用,因為某些文件的名稱中有下劃線。我不確定為什麼這會破壞腳本,但確實如此。命令:

find ./ -name "*" | xargs chmod 777

這是目錄樹的匿名片段:

files
\- 28934723
  \- file1.xml
  \- file2.txt
\- 34905834
  \- file1.xml
  \- file2.txt
\- 21398230
  \- file1.xml
  \- file2.txt

據我所知man find,它應該自動遞歸到子目錄中,但我不確定。當我執行上述命令時,一些文件發生了變化,但大多數目錄保持不變(相同的權限)。

提前感謝你們可以提供的任何幫助:)

sudo chown -R www:www ./如果您不想要 www 擁有的目錄,只需將其更改回來。

我不明白為什麼以下命令行無法工作:

find . -print0 |xargs -0 chmod 777

或者更簡單,chmod 777 -R .

引用自:https://serverfault.com/questions/210107