본문 바로가기

프로그래밍/Python

Python 디스크 사용량 출력하기

728x90
반응형

Python 디스크 사용량 출력하기

Python 파이선 내장모듈 os 를 사용하여 시스템의 디스크 사용량을 출력하는 예제를 작성한다.

Python 내장 모듈을 사용해서 디스크 사용량을 알아보자!

Python 에서 시스템의 디스크 사용량을 출력하기 위해 파이선 내장모듈 os 를 사용한다. statvfs (path) 함수를 이용하면 mount 된 disk 의 정보를 알 수 있다. path로 전달된 값은 디스크가 마운트된 위치를 나타낸다.

os.statvfs(path)

Python os 모듈의 statvfs의 반환값은 다음과 같다.

반환값 설명
f_bsize 파일시스템 블록 크기
f_frsize 파일시스템 블록 크기 (기본)
f_blocks 파일시스템의 총 블록 수
f_bfree 사용 가능한 총 블록 수
f_bavail 비 수퍼유저가 사용할 수있는 무료 블록.
f_files 파일시스템 총 노드 수
f_ffree 사용 가능한 총 파일 노드 수
f_favail 비 슈퍼유저가 사용할 수있는 무료 노드.
f_flag 파일시스템 플래그 (시스템마다 상이)
f_namemax 최대 파일 이름 길이

Python  os.statvfs 을 이용하여 디스크의 총크기와 사용량을 출력하는 코드를 참고한다.

import os

def get_st_disk():
    # 디스크 파일 시스템 정보
    st = os.statvfs("/")

    # 총, 남은 디스크 용량 계산
    total = st.f_blocks * st.f_frsize
    used = (st.f_blocks - st.f_bfree) * st.f_frsize
    free = st.f_bavail * st.f_frsize

    # GB 단위로 출력
    print("disk total :" + str(total/1024/1024/1024)[0:5] + "GB")
    print("disk used : " + str(used/1024/1024/1024)[0:5] + "GB")
    print("disk free : " + str(free/1024/1024/1024)[0:5] + "GB")

get_st_disk()

위 코드를 실행해보자.

disk total :112.8GB
disk used : 80.53GB
disk free : 29.63GB

 

반응형