如何在python中实现chmod u-w

时间:2013-06-15 13:30:50

标签: python chmod

我知道如何使用以下代码实现chmod u + w:

st = os.stat(dest_file)
os.chmod(dest_file, st.st_mode | stat.S_IWUSR)

但你怎么样?

1 个答案:

答案 0 :(得分:6)

st = os.stat(dest_file)
os.chmod(dest_file, st.st_mode & ~stat.S_IWUSR)

说明:~是按位NOT运算符,因此带有~stat.S_IWUSR的按位AND会清除st.st_mode的标记。

用虚数值来说明:

stat.S_IWUSR                    00001000
~stat.S_IWUSR                   11110111
s.st_mode                       00101001
s.st_mode & ~stat.S_IWUSR       00100001