2011-10-27 191 views
2

我想改變我的網站中的每個文件夾的文件夾權限,但不是文件。更改文件夾權限只有不是Linux中的文件

我可以通過做ls -l | egrep '^d'一一列舉,但有沒有辦法做到這一點:

chmod 751 | egrep '^d',我得到一個錯誤的搭配chmod預計3個PARAMS,但我對如何給它從egrep的結果不確定。

我試圖通過使用chmod 751 -R *.*作弊,但我有幾個文件夾'。'在名字中,這樣就行不通了。

回答

11

我想這應該工作:

find . -type d -exec chmod 751 {} \; 
+2

請注意,該命令是遞歸的,並且也將在子目錄上執行(OP的示例僅處理當前目錄)。要限制到當前目錄,請使用'--maxdepth'選項。 –

0

如果你有列出所需物品的方法來改變你可以隨時將它包裝在$()(或反引號),以有位首先執行,並放置作爲參數,如下所示:

chmod 751 $(ls -l | egrep '^d') 
+0

什麼是egrep工作? –

+0

我從他的問題中拿出來,卻意外地忽略了第一個問題。 – Thor84no

+0

另一個問題是,它不會正確處理帶有空格的文件名,並且如果文件太多,會出現「參數列表太長」的錯誤。 –