以下通常用于设置文件权限,一个很好的例子是将密钥文件设置为 ssh 使用的适当权限级别(这是“八进制”形式):
chmod 600 filename.xyz
Run Code Online (Sandbox Code Playgroud)
改用以下内容(这是“符号”形式)是否是正确的等效和可接受的做法?
chmod a=,u=r filename.xyz
Run Code Online (Sandbox Code Playgroud)
我问的原因是代码可读性似乎更清晰一些。仍然不完全是人类可读的,但不需要位映射。
如果最大的可读性(而不是简洁)是主要驱动因素,那么会有更好的选择吗?
使用a=,u=r,顺序很重要。如果你不小心掉的顺序a=和u=r(或顺序a=和u=),结果将是非常不同的。(是的,a并且u在 QWERTY 键盘上彼此相距很远,但是有人查看参考文档并手动输入内容可能会在两个外观非常相似的部分之间弄乱。)为了最大程度的可读性和安全性,我会更多明确的:
chmod u=r,go-rwx filename # or go-rwxst
Run Code Online (Sandbox Code Playgroud)
这里的权限组件非常不同,而且更加明确,减少错误发生的可能性。不管你是go-rwx第一个还是u=r第一个。