Python os.lchflags()方法

2019-10-16 23:04:34

Python的lchflags()方法將路徑的標誌設定為數位標誌。這個方法不像chflags()方法那樣遵循符號連結。 從Python 3.3開始,它相當於os.chflags(path,flags,follow_symlinks = False)

這裡,標誌可以採用以下值(如stat模組中定義)的組合(按位元OR) -

  • UF_NODUMP - 不轉儲該檔案。
  • UF_IMMUTABLE - 該檔案可能不會更改。
  • UF_APPEND - 該檔案只能附加到。
  • UF_NOUNLINK - 該檔案可能未被重新命名或刪除。
  • UF_OPAQUE - 通過聯合堆疊檢視時,該目錄是不透明的。
  • SF_ARCHIVED - 可以歸檔檔案。
  • SF_IMMUTABLE - 該檔案可能不會更改。
  • SF_APPEND - 該檔案只能附加到。
  • SF_NOUNLINK - 該檔案可能不會被重新命名或刪除。
  • SF_SNAPSHOT - 該檔案是一個快照檔案。

注意 - 此方法已在Python 2.6中引入

語法

以下是lchflags()方法的語法 -

os.lchflags(path, flags)

引數

  • path - 這是要設定標誌的檔案路徑。
  • flags - 這可以是上述定義的標誌值的組合(按位元OR)。

返回值

  • 此方法不返回任何值,僅在Unix系統上可用。

範例

以下範例顯示了lchflags()方法的用法。

#!/usr/bin/python3
import os, sys

# Open a file
path = "/var/www/html/foo.txt"
fd = os.open( path, os.O_RDWR|os.O_CREAT )

# Close opened file
os.close( fd )

# Now change the file flag.
ret = os.lchflags(path, os.UF_IMMUTABLE )

print ("Changed file flag successfully!!")

執行上面程式碼後,將得到以下結果 -

Changed file flag successfully!!