Python | os.chmod 函數
最近更新時間 2020-12-04 16:50:55
os.chmod 函數修改 path 的 model,model 值可以按位 “或” 組合使用。函數接收至少兩個參數。
如果 path 路徑不存在,拋出 FileNotFoundError 異常。
函數定義
os.chmod(path, mode, *, dir_fd=None, follow_symlinks=True)
參數
- checkpath - 目錄或文件路徑
- checkmodel - 需要設置的 model
- stat.S_ISUID=0o4000 設置 UID 位。
- stat.S_ISGID=0o2000 設置分組 ID 位。
- stat.S_ISVTX=0o1000 固定位。 當對目錄設置該位時則意味着此目錄中的文件只能由文件所有者、目錄所有者或特權進程來重命名或刪除。
- stat.S_IRUSR=0o0400 所有者具有讀取權限。
- stat.S_IWUSR=0o0200 所有者具有寫入權限。
- stat.S_IXUSR=0o0100 所有者具有執行權限。
- stat.S_IRWXG=0o0070 組權限的掩碼。
- stat.S_IRGRP=0o0040 組具有讀取權限。
- stat.S_IWGRP=0o0020 組具有寫入權限。
- stat.S_IXGRP=0o0010 組具有執行權限。
- stat.S_IRWXO=0o0007 其他人(不在組中)的權限掩碼。
- stat.S_IROTH=0o0004 其他人具有讀取權限。
- stat.S_IWOTH=0o0002 其他人具有寫入權限。
- stat.S_IXOTH=0o0001 其他人具有執行權限。
- stat.S_ENFMT=S_ISGID System V 執行文件鎖定。
- stat.S_IREAD=0o0400 Unix V7 中 S_IRUSR 的同義詞。
- stat.S_IWRITE=0o0200 Unix V7 中 S_IWUSR 的同義詞。
- stat.S_IEXEC=0o0100 Unix V7 中 S_IXUSR 的同義詞。
返回值
- checkNone - 無。
示例1: - 使用 os.chmod() 函數設置其他用户的文件權限。
# coding=utf-8
# Python3 代碼
# 使用 os.chmod() 設置文件其他用户讀寫權限,最開始文件權限為 -rw-r--r--
# 引入 os stat 庫
import os
import stat
path = "./foo.md"
# 設置文件其他用户有讀寫權限
mode = stat.S_IROTH | stat.S_IWOTH
retval = os.chmod(path, mode)
# 設置完成後文件權限 -------rw-
print("Return Value: %s" % retval)
Return Value: None
注:上面的例子中,最開始文件權限為 -rw-r--r--,設置後文件權限變為 -------rw-,以前的所有者權限丟失。