Python 3 – os.chmod() 方法
描述
方法 chmod() 将 path 的模式更改为传递的数字 mode 。模式可以采用以下值或它们的按位OR组合之一 –
- stat.S_ISUID - 执行时设置用户ID。
-
stat.S_ISGID - 执行时设置组ID。
-
stat.S_ENFMT - 强制记录锁定。
-
stat.S_ISVTX - 执行后保存文本映像。
-
stat.S_IREAD - 拥有者读取。
-
stat.S_IWRITE - 拥有者写入。
-
stat.S_IEXEC - 拥有者执行。
-
stat.S_IRWXU - 读,写和执行拥有者。
-
stat.S_IRUSR - 拥有者读取。
-
stat.S_IWUSR - 拥有者写入。
-
stat.S_IXUSR - 拥有者执行。
-
stat.S_IRWXG - 读,写和执行组。
-
stat.S_IRGRP - 组读取。
-
stat.S_IWGRP - 组写入。
-
stat.S_IXGRP - 组执行。
-
stat.S_IRWXO - 由其他人读取,写入和执行。
-
stat.S_IROTH - 其他人读取。
-
stat.S_IWOTH - 其他人写入。
-
stat.S_IXOTH - 其他人执行。
语法
下面是 chmod() 方法的语法 –
os.chmod(path, mode)
参数
- path - 要设置模式的路径。
-
mode - 这可以采用上述任一值或它们的按位OR组合。
返回值
此方法不返回任何值。
注意 - 尽管Windows支持chmod(),但它只能使用(通过stat.S_IWRITE和stat.S_IREAD常量或相应的整数值)设置文件的只读标志。所有其他位都被忽略。
示例
下面的示例演示了chmod()方法的用法。
#!/usr/bin/python3
import os, sys, stat# 假设 /tmp/foo.txt 存在,设置文件由组执行。
os.chmod("/tmp/foo.txt", stat.S_IXGRP)
# 由其他人写入文件。
os.chmod("/tmp/foo.txt", stat.S_IWOTH)
print("成功更改模式!")
结果
当我们运行上面的程序时,它会产生以下结果 –
成功更改模式!