[파이썬] 파일 경로의 권한 설정

파이썬은 운영체제와 상호작용하기 위한 다양한 모듈을 제공합니다. 파일 시스템에 접근하고 파일 및 디렉토리의 권한을 설정하는 것도 가능합니다. 이 글에서는 Python을 사용하여 파일 경로의 권한을 설정하는 방법을 다루고자 합니다.

파일 경로의 권한 확인하기

파일의 권한을 설정하기 전에, 먼저 해당 파일의 현재 권한을 확인하는 것이 중요합니다. 다음의 코드를 사용하여 파일의 권한을 확인할 수 있습니다.

import os

file_path = '/path/to/file.txt'

# 파일의 권한을 확인합니다.
permissions = oct(os.stat(file_path).st_mode)[-3:]
print(f"File permissions: {permissions}")

위의 코드에서는 os.stat() 함수를 사용하여 파일의 메타데이터를 얻고, st_mode 속성을 통해 파일의 권한을 가져옵니다. oct() 함수를 사용하여 8진수 형태로 변환한 후, 마지막 3자리만 출력합니다.

파일 권한 변경하기

파일의 권한을 변경하려면 os.chmod() 함수를 사용하면 됩니다. 다음의 코드를 참고하여 파일의 권한을 설정할 수 있습니다.

import os

file_path = '/path/to/file.txt'

# 새로운 권한 값을 지정합니다 (예: 644).
new_permissions = 0o644

# 파일의 권한을 변경합니다.
os.chmod(file_path, new_permissions)

위의 코드에서는 os.chmod() 함수를 사용하여 지정한 파일의 권한을 변환합니다. new_permissions 변수에 새로운 권한 값을 할당합니다. 이 때, 8진수 형태로 지정하기 위해 숫자 앞에 0o를 붙입니다.

디렉토리 권한 변경하기

파일이 있는 디렉토리의 권한을 변경하려면 약간의 수정이 필요합니다. 다음의 코드를 사용하여 디렉토리의 권한을 변경할 수 있습니다.

import os

directory_path = '/path/to/directory'

# 새로운 권한 값을 지정합니다 (예: 755).
new_permissions = 0o755

# 디렉토리의 권한을 변경합니다.
os.chmod(directory_path, new_permissions)

위의 코드에서는 파일 경로 대신 디렉토리 경로를 directory_path 변수에 할당합니다. 그 외에는 파일 권한 변경과 동일한 방법으로 디렉토리의 권한을 변경할 수 있습니다.

마무리

이 글에서는 Python을 사용하여 파일 경로의 권한을 설정하는 방법을 알아보았습니다. os 모듈의 stat() 함수로 파일의 권한을 확인하고, chmod() 함수로 권한을 변경할 수 있습니다. 파일 뿐만 아니라 디렉토리의 권한도 변경할 수 있습니다. 이러한 기능을 활용하여 파일 시스템을 유연하게 다룰 수 있습니다.