파일을 자동으로 관리하거나 리스트업할 때, 파일의 이름, 수정 시간, 크기 등을 확인해야 할 일이 많습니다. 이번 글에서는 Python의 os와 datetime 모듈을 활용해 여러 파일의 정보를 추출하는 간단한 예제를 소개합니다.
사용된 도구
- os.path.getmtime() : 파일의 **수정 시각 (타임스탬프)**을 가져옴
- os.path.getsize() : 파일의 **크기(바이트 단위)**를 가져옴
- datetime.datetime.fromtimestamp() : 타임스탬프를 사람이 읽을 수 있는 날짜/시간 형식으로 변환
코드 예시
import os
import datetime
filenames = [
'main.py',
'istockphoto-1366752864-612x612.jpg',
'PT(최종평가)_스마트유지관리(테크로스)_싸인랩_250314d.pptx'
]
for filename in filenames:
mtimestamp = os.path.getmtime(filename) # 수정 시각 (타임스탬프)
mtime = datetime.datetime.fromtimestamp(mtimestamp) # 사람이 읽을 수 있는 형식으로 변환
size = os.path.getsize(filename) # 파일 크기 (바이트 단위)
file_info = {
'filename': filename,
'mtime': str(mtime),
'size': size
}
print(file_info)
출력 예시
{
'filename': 'main.py',
'mtime': '2024-03-21 16:45:10.125000',
'size': 2148
}
위 예시처럼, 각 파일에 대해 다음과 같은 정보가 출력됩니다:
- filename : 파일명
- mtime : 마지막 수정 시간 (읽기 쉬운 문자열로 변환됨)
- size : 파일 크기 (단위: 바이트)
확장 아이디어
이 코드는 아주 간단하지만, 다음과 같은 방식으로 더 확장해볼 수 있습니다:
- 특정 확장자만 필터링 (.jpg, .py 등)
- 크기가 일정 이상인 파일만 출력
- size를 MB/KB 단위로 보기 좋게 포맷팅
- 결과를 JSON이나 CSV 파일로 저장
마무리
이처럼 Python을 활용하면 파일 시스템 정보를 쉽게 자동화하거나 분석할 수 있습니다.
단 몇 줄의 코드만으로도 파일 정리, 백업, 리포트 작성 등 다양한 자동화 작업이 가능하다는 점, 참 매력적이지 않나요?
'시스템 개발 및 관리 > Windows 환경 파일 자동화' 카테고리의 다른 글
실전 자동화 문제: 보고서 직전에 파일 이름 일괄 변경하기!📝 문제 상황 (0) | 2025.03.21 |
---|---|
Python으로 파일 읽기: with open() 구문 활용하기 (0) | 2025.03.21 |
타임스탬프(Timestamp) 형식이란 (0) | 2025.03.21 |
Python으로 5MB 이상 파일 찾기 (0) | 2025.03.21 |
파일 용량 가져오기 (0) | 2025.03.21 |