Python | os.chflags 函数

最近更新时间 2020-12-04 11:33:38

os.chflags 函数修改 path 的 flags,flags 使用 stat 模块中定义的数字常量,可以按位 “或” 组合使用。函数需至少输入 path 和 flags 两个参数。只在 Unix 系统中使用。

函数定义

os.chflags(path, flags, *, follow_symlinks=True)

参数

  • checkpath - 目录或文件路径。
  • checkflags - 需要设置的 flags。
    • stat.UF_NODUMP: 不要转储文件。
    • stat.UF_IMMUTABLE: 文件不能被更改。
    • stat.UF_APPEND: 文件只能被附加。
    • stat.UF_OPAQUE: 当通过联合堆栈查看时,目录是不透明的。
    • stat.UF_NOUNLINK: 文件不能重命名或删除。
    • stat.UF_COMPRESSED: 文件是压缩存储的(Mac OS X 10.6+)。
    • stat.UF_HIDDEN: 文件不能显示在GUI 中(Mac OS X 10.5+)。
    • stat.SF_ARCHIVED: 文件可能已存档。
    • stat.SF_IMMUTABLE: 文件不能被更改。
    • stat.SF_APPEND: 文件只能被附加。
    • stat.SF_NOUNLINK: 文件不能重命名或删除。
    • stat.SF_SNAPSHOT: 文件有一个快照文件。

返回值

  • checkNone - 无返回值。

示例1: - 使用 os.chflags() 函数设置文件 flags。

# coding=utf-8

# Python3 代码
# 使用 os.chflags() 设置文件 flags

# 引入 os stat 库
import os
import stat

path = "/tmp/foo.txt"

# 设置文件 flag 不能重命名或删除
flags = stat.SF_NOUNLINK
retval = os.chflags( path, flags)
print("Return Value: %s" % retval)
Return Value : None
注:如果当前操作系统不支持 os.chflags 会抛 AttributeError: module 'os' has no attribute 'chflags' 异常。
rss_feed