我有一个表示Linux文件权限的八进制。
权限当前为0o640
,我想将组位设置为6(因此0o660
)。我看到我可以在第n个位置here设置位,但是我得到的结果很奇怪,我想这是因为八进制表示
我试过:
perm = 0o640
# Set the bit in the 2nd place (index 1) to 6.
new_perm = perm | (6<<1)
# new_perm is now 0o634 (wanted 0o660).
我做错了什么我想
我还想知道在Python中使用八进制而不是常规整数处理文件权限有什么好处
谢谢
Tags:
<<
将数字移位一位。对于您想要的答案,您应该将0o600
移位3
根据注释,我们应该首先将要归零的位设为零,然后使用
|
(perm & 0o707)
这部分代码使这种情况发生相关问题 更多 >
编程相关推荐