Python에서 파일 권한 확인하기
Python에서는 os.access(path, mode) 함수를 사용하여 파일의 읽기, 쓰기, 실행 권한을 손쉽게 확인할 수 있습니다. 이 함수는 지정한 경로의 파일에 대해 현재 프로세스가 해당 작업을 수행할 수 있는지 여부를 True 또는 False로 반환합니다.
os.access() 사용 예제
>>> import os
>>> os.access('my_file', os.R_OK) # 읽기 권한 확인
True
>>> os.access('my_file', os.W_OK) # 쓰기 권한 확인
True
>>> os.access('my_file', os.X_OK) # 실행 권한 확인
False
>>> os.access('my_file', os.F_OK) # 파일 존재 여부 확인
True
주요 모드 상수
- os.R_OK: 읽기 권한이 있는지 확인합니다.
- os.W_OK: 쓰기 권한이 있는지 확인합니다.
- os.X_OK: 실행 권한이 있는지 확인합니다.
- os.F_OK: 파일이 실제로 존재하는지 확인합니다.
os.stat()으로 더 자세한 정보 얻기
os.stat() 함수를 사용하면 파일이나 파일 디스크립터의 상태 정보를 가져올 수 있습니다. 다만 이 함수는 권한 정보를 비트마스크(bitmask) 형태로 표현하기 때문에 해석이 다소 복잡할 수 있습니다. 자세한 내용은 공식 문서에서 확인할 수 있습니다: Python 공식 문서 - os.stat
간단한 권한 검사에는 os.access()가 가장 직관적이며, 파일 소유자·그룹·권한 비트 등 세부 정보가 필요한 경우에는 os.stat()과 stat 모듈을 함께 활용하는 것이 좋습니다.