명령어

리눅스 stat 명령어 – 특정 파일 및 디렉토리 정보 확인

리눅스 명령어 – stat


stat 명령어를 사용하면 리눅스 시스템 내 디렉토리나 파일의 다양한 정보를 확인할 수 있습니다.

일반적으로 우리가 자주 사용하는 ls 명령어와는 다르게 요약되지 않은 정보를 출력함으로서, 파일의 권한이나 수정 시각을 자세히 알고 싶다면 stat을 사용하는 것이 좋습니다.

 

stat 명령어로 알 수 있는 대략적인 정보는 다음과 같습니다.

  • Inode : inode(아이노드) 번호
  • Uid, Gid : 소유자 및 그룹의 이름과 UID 및 GID
  • Links : 링크된 파일의 수
  • Context : 보안 정책(SELinux Policy) 정보
  • Access(상단) : 권한 정보
  • Access(하단) : 접근 시각(atime) 정보
  • Modify : 수정 시각(mtime) 정보
  • Change : 변경 시각(ctime) 정보

 

 

사용 방법


stat을 사용할 때 파일이나 디렉토리를 인자값으로 지정하면 해당 파일의 상세 정보를 출력할 수 있습니다.

$ stat testfile 
  File: ‘testfile’
  Size: 5          Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d Inode: 101254431   Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:22:51.408946787 +0900
Modify: 2019-01-13 20:22:53.234352063 +0900
Change: 2019-01-13 20:22:53.237602043 +0900
 Birth: -

 

여러 파일이나 디렉토리를 인자값으로 지정하여 한 번에 파일 정보를 확인할 수 있습니다. 여기에는 와일드카드 규칙(예 : stat testfile*)도 사용할 수 있습니다.

$ stat testfile1 testfile2
  File: ‘testfile1’
  Size: 90         Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d Inode: 101546507   Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:38:00.132684633 +0900
Modify: 2019-01-13 20:38:00.132684633 +0900
Change: 2019-01-13 20:38:00.133767959 +0900
 Birth: -
  File: ‘testfile2’
  Size: 5          Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d Inode: 101546506   Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:37:49.077334881 +0900
Modify: 2019-01-13 20:37:49.077334881 +0900
Change: 2019-01-13 20:37:49.077334881 +0900
 Birth: -

 

응용하자면 --printf 옵션을 사용하여 원하는 값만 출력할 수 있습니다. 자세한 포맷은 man stat을 입력하여 확인할 수 있습니다. 아래는 inode 번호만 출력하는 예시입니다.

$ stat --printf="Inode : %i \n" testfile1
Inode : 101546507

 

JooTC

안녕하세요. 테크놀로지에 관심이 많은 블로거입니다.

Recent Posts

Zalgo 텍스트와 이를 방지하는 방법

인터넷 커뮤니티 사이트에서 게시글이나 댓글에 간혹 장난을 목적으로 작성된 특이한 글자를 볼 수 있습니다. 위…

4주 ago

리눅스 kill, killall 명령어 – 특정 프로세스 종료하기

리눅스 명령어 - kill, killall 리눅스 kill 명령어는 특정 프로세스를 종료해주는 명령어입니다. 백그라운드에서 실행되고 있는…

4주 ago

JavaScript typeof null이 ‘object’인 이유

JavaScript는 역사가 긴 스크립트 프로그래밍 언어입니다. 세월이 흐르면서 많은 자바스크립트 표준이 만들어졌고, 현재는 많은 문법적…

4주 ago

Mocha Error: Resolution method is overspecified. 해결 방법

NodeJS 테스트 프레임워크인 Mocha는 비동기 테스트를 지원합니다. 간혹 특정 테스트 스크립트를 작성하고 실행하면 아래와 같이…

4주 ago

윈도우 11 설치 시 Microsoft 계정 로그인 없이 로컬 계정 만들기

언제부턴가 윈도우 11을 처음 설치할 때 마이크로소프트(Microsoft) 계정 로그인을 강제로 요구하게 되었습니다. 물론 마이크로소프트 계정이…

6개월 ago

에어팟 프로 2 케이스 스피커 소리를 완전히 끄는 방법

애플 에어팟 프로 2 (AirPods Pro 2) 케이스에는 스피커가 내장되어 있습니다. 그런데 간혹 아무 것도…

9개월 ago