+x 和 0755 的 Chmod 等价

rlu*_*uks 8 bash shell

只是好奇,这两个是完全等价的吗?

chmod +x file
chmod 0755 file
Run Code Online (Sandbox Code Playgroud)

key*_*ser 8

chmod 0755 file相当于 u=rwx (4+2+1),go=rx (4+1 & 4+1)。0 指定默认的特殊模式(见下面的评论)。有关更多信息,请参阅维基百科(包括描述 u、g、o、a 和 r、w、x、s、t 的表格)。

换句话说:不,它们不等价,因为 0755 包含更多标志。

另请参阅:chmod 手册页


tri*_*eee 6

Chmod number将权限设置为该数字。Chmod relative仅更改请求的位。之前权限为 000 的文件chmod +x现在将是 111。相反,之前权限为 0775 的文件(所有者和组的读+写+执行;其他人的读取和执行)将保持不变chmod +x,而将模式设置为 0755将更改 020 位(删除组的写访问权限)。