Python 3 – os.lchmod() 方法
描述
方法 lchmod() 将路径的模式更改为数字模式。如果路径是符号链接,则影响符号链接而不是目标。从Python 3.3开始,这等效于os.chmod(path,mode,follow_symlinks=False)。
模式可以取以下值之一或它们的按位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: 被其他用户执行。
注意: 该方法已在Python 2.6中引入。
语法
方法 lchmod() 的语法如下:
os.lchmod(path, mode)
参数
- path − 要设置模式的文件路径。
-
mode − 可以取以上提到的值中的一个或它们的按位OR组合。
返回值
该方法不返回任何值。
示例
以下示例演示了使用lchmod()方法的用法。
#!/usr/bin/python3
import os, sys
# 打开文件path = "/var/www/html/foo.txt"
fd = os.open( path, os.O_RDWR|os.O_CREAT )
# 关闭打开的文件
os.close( fd )
# 现在更改文件模式。
# 设置一个由组执行的文件。
os.lchmod( path, stat.S_IXGRP)
# 将文件写入其他组。
os.lchmod("/tmp/foo.txt", stat.S_IWOTH)
print ("模式修改成功!")
运行上面的程序会产生以下结果:
模式修改成功!