@josemanuel@qoto.org also easier to not clear setuid/setgid bits accidentally
@norm To me, ugo seems less clear precisely because of that, instead of just saying: “These are the new permissions” that you get with octal. In that sense, ugo reminds me of a diff file. I can''t get the whole picture from a diff.
It's also more verbose and you have to keep more things in mind (e.g., in your example you have to make a conscious parsing effort for each part of the expression. “This permission is for the group part. The minus sign means you're removing permissions, and these are the write and execute ones.”
@josemanuel@qoto.org tbh I'd have to do parsing for octal, like what does 755 mean? I'd have to know how to go from octal to binary to understand that and it's not that intuitive.
@josemanuel@qoto.org and if I did want to just set everything with ugo, I can do that explicitly:
chmod u=rwx,go=rx file
@josemanuel@qoto.org I get options with ugo to either set everything or do a diff.
Of course chmod could add bitwise operations to octal, but then it'd be even less comprehensible
@josemanuel@qoto.org I like how i can just tell chmod to set certain bits rather than having to set everything (e.g.
chmod go-wx fileto remove write and execute for group and other)