본문 바로가기
프로그래밍/리눅스

리눅스 필수 커맨드라인 툴 stat

by bantomak 2025. 2. 12.
반응형

stat 명령어

stat 명령어는 파일이나 파일 시스템의 상세한 상태 정보를 표시하는 커맨드라인 툴이다. 파일 크기, 디스크 사용량, 권한, 최근 접근 및 수정 날짜, 아이노드 번호 등을 포함한 다양한 메타데이터를 제공한다. stat 명령어를 사용하면 시스템 관리자나 개발자가 파일 속성을 파악하기 쉽다.

 

stat 명령어는 다음과 같이 사용한다.

stat [option] [file]

stat 명령어의 주요 옵션

  • -f : 파일이 아닌 파일 시스템의 상태를 표시한다.
  • -c [user_define_format] : 출력 형식을 사용자 정의 형식으로 지정한다.
    • %n : 파일 이름
    • %s : 파일 크기
    • %a : 파일 권한(8진수 표시)
    • %A : 파일 권한(rwxrwxrwx 형태)
    • %h : 하드링크 개수
    • %i : 아이노드 멤버
    • %U : 소유자 이름
    • %w : 파일 생성 시각
    • %y : 파일 수정 시각
    • %F : 파일 타입
  • -L : 심볼릭 링크가 가리키는 대상 파일의 정보를 표시한다.
  • -t : 파일에 대한 정보를 소프트웨어가 읽어서 처리하기 좋은 형태로 출력한다.

파일 상태 정보 조회하기

stat 명령어로 /etc/passwd 파일의 정보를 확인해 보자.

stat /etc/passwd

-t 옵션을 입력하면 소프트웨어가 읽어서 처리하기 좋은 형태로 출력한다.

stat -t /etc/passwd

-c 옵션으로 파일 이름과 크기, 파일 권한을 출력해 보자.

  • %n : 파일 이름
  • %s : 파일 크기
  • %A : 파일 권한(rwxrwxrwx 형태)
stat -c "%n: Size=%s, Permission=%A" /etc/passwd

find로 검색한 파일에 stat를 사용할 수도 있다.

sudo find /etc/ -name passwd -exec stat -c "%n: Size=%s, Permission=%A" {} \;

심볼릭 링크를 조회하면 어떻게 출력될까? /etc/systemd/system/syslog.service 파일은 /lib/systemd/system/rsyslog.service 파일을 가리키는 심볼릭 링크이다. 아무 옵션 없이 stat으로 파일 정보를 조회하면 심볼릭 링크 자체의 정보가 출력된다.

stat /etc/systemd/system/syslog.service

-L 옵션을 설정하고 다시 심볼릭 링크를 조회하면 심볼릭 링크가 가리키는 파일의 정보가 출력된다.

stat -L /etc/systemd/system/syslog.service

심볼릭 링크가 가리키는 대상 파일에 대해 stat 명령을 실행하면 같은 정보가 출력되는 것을 확인할 수 있다.

stat /lib/systemd/system/rsyslog.service

함께 읽으면 좋은 글

 

리눅스 필수 커맨드라인 툴 find

find 명령어find 명령어는 파일이나 디렉터리를 검색하는 커맨드라인 툴이다. grep이 파일의 내용을 검색하는 반면, find는 파일이나 디렉터리 자체를 검색한다. 다양한 기준과 조건으로 파일 시스

jettstream.tistory.com

댓글