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