設定所有使用者可執行的所有可執行文件,但保留不可執行的文件不可執行?

設定所有使用者可執行的所有可執行文件,但保留不可執行的文件不可執行?

將檔案複製到其中後,我有一個由 root 擁有的目錄。所有exe檔只能以root身分執行。但我希望每個人都能夠運行它。當然,我chmod -R u=rwX,g=rX,o=rX每次新增文件後都可以使用。然而,這很煩人。我可以在目錄中設定什麼來自動允許所有使用者運行該exe嗎?

答案1

umask 0022在進行複製之前使用,-rw-r--r--預設情況下您將獲得具有權限的所有新文件,但只有直接呼叫 chmod +x 才能使文件可執行。

您可以使用縮寫命令:chmod -R a+rX directory手動執行此操作。

若要自動設定所有檔案權限,您可以使用 inotifywait ,如下所示:

inotifywait -qm <directory> -e create -e moved_to -e modify \
 | while read a b c; do chmod a+rX "${a}${c}"; done

相關內容