Python3-os-access

提供:Dev Guides
移動先:案内検索

Python 3-os.access()メソッド

説明

メソッド* access()*は、実際のuid/gidを使用して、パスへのアクセスをテストします。 ほとんどの操作は有効なuid/gidを使用するため、このルーチンをsuid/sgid環境で使用して、呼び出し元のユーザーがパスへの指定されたアクセス権を持っているかどうかをテストできます。アクセスが許可されている場合はTrue、そうでない場合はFalseを返します。

構文

以下は* access()*メソッドの構文です-

os.access(path, mode)

パラメーター

パス-これは、存在またはアクセスについてテストされるパスです。

*mode* -これは、パスの存在をテストするF_OKである必要があります。または、R_OK、W_OK、およびX_OKの1つ以上の包含的ORで許可をテストすることができます。
  • os.F_OK -パスの存在をテストするためにaccess()のモードパラメーターとして渡す値。
  • os.R_OK -パスの可読性をテストするために、access()のmodeパラメーターに含める値。
  • os.W_OK -パスの書き込み可能性をテストするためにaccess()のmodeパラメーターに含める値。
  • os.X_OK -パスを実行できるかどうかを判断するために、access()のmodeパラメーターに含める値。

戻り値

このメソッドは、アクセスが許可されている場合は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