Python3 os.access()方法
access() 方法使用真正的 uid/gid 測試訪問路徑。大多數的操作將使用有效的uid/gid,因此這個程序可以在一個 suid/sgid 環境可以用於測試調用用戶是否擁有指定路徑訪問權限。允許訪問則返回TRUE,否則返回False。
語法
以下是 access() 方法的語法:
os.access(path, mode)
參數
path -- 這是對於存在或任何訪問進行測試的路徑
mode -- F_OK值是用於測試路徑的存在,或者它可以是在包含或一種或多種R_OK,W_OK,X_OK測試權限。
- os.F_OK: 值作爲模式參數傳到 access() 測試來路徑是否存在
- os.R_OK: 值作爲模式參數傳到 access() 測試來路徑是否可讀
- os.W_OK 值作爲模式參數傳到 access() 測試來路徑是否可寫
- os.X_OK 值作爲模式參數傳到 access() 測試來路徑是否可執行
返回值
此方法如果允許訪問則返回 True ,否則返回 False
示例
下面的示例說明 access() 方法的使用。
#!/usr/bin/python3
import os, sys
Assuming /tmp/foo.txt exists and has read/write permissions.
ret = os.access("/tmp/foo.txt", os.F_OK)
print ("F_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.R_OK)
print ("R_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.W_OK)
print ("W_OK - return value %s"% ret)
ret = os.access("/tmp/foo.txt", os.X_OK)
print ("X_OK - return value %s"% ret)
當我們運行上面的程序,它會產生以下結果:
F_OK - return value True
R_OK - return value True
W_OK - return value True
X_OK - return value False