[파이썬] 파일의 메타데이터 읽기와 쓰기

파일의 메타데이터는 파일에 대한 추가 정보를 포함하고 있습니다. 이러한 메타데이터에는 파일의 크기, 생성 일자 및 수정 일자, 소유자 및 권한과 같은 정보가 포함될 수 있습니다.

파이썬은 파일의 메타데이터를 읽고 쓰기 위해 내장된 os 모듈과 path 모듈을 제공합니다. 이러한 모듈을 사용하여 파일의 메타데이터를 읽고 변경하거나 새로운 메타데이터를 추가할 수 있습니다.

파일 메타데이터 읽기

파일의 메타데이터를 읽기 위해 os.path 모듈의 stat() 함수를 사용할 수 있습니다. 이 함수는 파일에 대한 정보를 나타내는 os.stat_result 객체를 반환합니다.

다음은 파일의 크기와 수정 일자를 표시하는 예제 코드입니다.

import os
from datetime import datetime

file_path = 'example.txt'

# 파일의 메타데이터 읽기
file_stats = os.stat(file_path)

# 파일 크기 읽기
file_size = file_stats.st_size
print(f"파일 크기: {file_size} bytes")

# 파일 수정 일자 읽기
modified_timestamp = file_stats.st_mtime
modified_date = datetime.fromtimestamp(modified_timestamp)
print(f"수정일자: {modified_date}")

위의 코드에서는 os.stat() 함수를 사용하여 지정된 파일의 메타데이터를 읽습니다. st_size 속성은 파일의 크기를 나타내고, st_mtime 속성은 파일의 수정 시간을 나타냅니다.

파일 메타데이터 쓰기

파일의 메타데이터를 변경하고 새로운 메타데이터를 추가하기 위해 os 모듈의 utime() 함수를 사용할 수 있습니다.

다음은 파일의 수정 일자를 변경하는 예제 코드입니다.

import os
from datetime import datetime

file_path = 'example.txt'

# 현재 시간으로 수정 일자 변경
current_time = datetime.now().timestamp()
os.utime(file_path, times=(current_time, current_time))

위의 코드에서는 os.utime() 함수를 사용하여 파일의 수정 일자를 현재 시간으로 변경합니다. times 매개 변수는 원하는 수정 일자를 포함하는 튜플로 전달되어야 합니다. 여기서는 현재 시간을 사용하여 수정 일자를 변경합니다.

파일의 메타데이터를 쓰기 위해서는 적절한 권한이 있어야 합니다. 따라서 파일 메타데이터를 쓰기 전에 필요한 권한이 있는지 확인하십시오.

파이썬의 os 모듈과 path 모듈은 파일의 메타데이터를 읽고 쓰는 데 유용한 기능을 제공합니다. 파일의 크기, 수정 일자 및 기타 메타데이터를 읽거나 변경하려는 경우 이러한 모듈을 활용하면 편리하게 작업할 수 있습니다.