본문 바로가기

Linux

[Linux] grep시 바이너리 파일 문제 해결 (Binary file matches)

반응형

가끔 grep을 통해 파일 내용을 출력해서 보려고 하면

 

$ grep "Test" test.log
Binary file test.log matches


라는 메시지와 함께 의도한 대로 명령을 수행하지 못하는 일이 발생한다.


이는 해당 파일이 대부분 문자열로 인코딩 된 파일이지만 특정 라인 때문에 data file로 인식될 수가 있고, 

이 경우 grep은 이를 binary 파일로 간주하게 된다.


이를 위해 grep은 모든 파일을 text 파일로 인식해서 grep 명령어를 수행하도록 도와주는 옵션을 제공한다.

 

  -a, --text                equivalent to --binary-files=text



위 처럼 a 옵션을 사용하면 binary 파일을 텍스트로 인식해서 내용을 검색할 수 있게 도와준다.

 

$ grep -a "Test" test.log
Test a option

 

반응형