Přemýšlejte na chvíli o svém požadavku. Máte (možná máte) nějaké spustitelné soubory (skripty nebo binární soubory) ve stromu adresářů? Pokud ano, chcete odebrat oprávnění ke spuštění (dokonce i sobě), nebo chcete oprávnění ke spuštění ponechat nedotčené? Pokud chcete ponechat oprávnění ke spuštění nedotčené, měli byste použít chmod o-w
odstranit (odečíst) w povolení k obřadu od o pouze tamější pole.
Také, jak ukazuje Anthon, find
příkaz uvedený v druhé odpovědi spouští chmod
program jednou pro každý světově zapisovatelný soubor, který najde. O něco efektivnější je říci
find top-level_directory -perm -2 -type f -exec chmod o-w {} +
Tím se spustí chmod
s mnoha soubory najednou, čímž se minimalizuje počet exec.
P.S. Nepotřebujete úvodní nuly na 2
.
find /dir/stuct/path -perm -0002 -type f -exec chmod 664 {} \;
"{}" představuje soubor nalezený funkcí find. "\;" ukončí příkaz, který je třeba provést.