
我想為下面編寫的路徑中的所有目錄添加(而不是修改其他檔案權限)。就像是chmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/
路徑
/home/mDB/admin/KNUCKLES/dbs/
我嘗試使用在論壇中找到的這個命令,但對我不起作用。
chmod +r /home/mDB/admin/KNUCKLES/dbs/ -R
我只想更改所有使用者的權限,而不是檔案/目錄所有者或群組的權限。
提前致謝。
答案1
你可以說:
chmod -R o+r /home/mDB/admin/KNUCKLES/dbs/
這會給讀遞歸地允許其他的,即不是所有者/組。
編輯:根據您的評論,似乎目錄的權限是問題,而不是檔案的問題。你可以說:
chmod o+rx /home/mDB/{admin,admin/KNUCKLES,admin/KNUCKLES/dbs}
請注意,由於這些是目錄,因此您需要將執行位元設為x
開啟。沒有這個,r
就沒有任何意義!
答案2
您必須將其拆分並發出多個命令。
chmod -R xx4 /home/
chmod -R xx4 /home/mDB/
chmod -R xx4 /home/mDB/admin/
chmod -R xx4 /home/mDB/admin/KNUCKLES/
chmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/
比我擁有更高級命令列功能的人可能知道更短的方法。
答案3
若要僅為目錄設定執行位,請執行下列操作:
chmod -R a+X dir
來自 man chmod:
僅當檔案是目錄或已具有某些使用者的執行權限 (X) 時才執行/搜尋
回答來自:https://unix.stackexchange.com/questions/39761/execute-bit-on-directories-but-not-files