본문 바로가기
System/Linux

magic file사용하기, 매직파일

by OdOp 관리자 2023. 10. 11.
SMALL

특정 형태를 가지고 있는 파일을 특정 type으로 지정하고 싶을 때가 가끔 있습니다. 

그때 저희는 file의 옵션을 사용하는데 어떻게 사용하는지 알아보고 또 다른 파일 옵션은 무엇이 있는지 한번 알아보도록 하겠습니다. 

 

magic file 만들기

기준을 만들어야 한다. 

"어디에 어떤 자료형이 어떤 것이 있으면 type을 출력해라" 이런 것을 말해주는 파일을 하나 만들어야 한다. 

"예를 들어 0바이트 위치에 문자열인 'Hello'가 있으면 'Hello, World!'인 형태라고 출력해라"를 만들어 보겠습니다. 

0 string Hello Hello, World!

이런 형태를 가진 magic파일을 만들었습니다. 

 

그면 이것을 file의 옵션인 -m에 적용을 해보도록 하겠습니다. 

$ file -m magic 파일 이름

file -m magic second

second파일의 0바이트 위치에 문자열인 형태로 Hello가 있으므로 'second: Hello, World!'를 출력한 모습을 볼 수 있습니다. 

 

그런데 만약에 magic에 맞지 않은 형태라면 오류를 출력하는 것이 아니라 그냥 원래 type을 출력해 줍니다. 

file -m magic sw.patch

위의 그림처럼 저희가 설정한 기준인 magic에 맞지 않기 때문에 sw.patch의 원래 형태인 ASCII text라고 말해줍니다.  

 

file 옵션

-b : 지정한 파일명은 출력하지 않고 파일의 유형만 출력해 줍니다. 
-f : 파일 목록에서 지정한 파일들에 대해서만 명령을 실행합니다. 
-i : MINE 타입 문자로 출력합니다. 
-L : 심볼릭 링크된 파일을 추적하여 원본 파일 정보를 출력해 줍니다. 
-m : 임의로 매직파일을 지정해 줍니다. 
-z : 압축된 파일의 내용을 출력합니다. 

 

LIST

'System > Linux' 카테고리의 다른 글

APT 설명  (0) 2023.12.16
Debian 설명  (0) 2023.12.15
file 명령어 사용하기  (0) 2023.10.10
find사용하기  (2) 2023.10.09
patch 사용하기  (0) 2023.10.08