텍스트 인 바이너리 파일이 있지만 로그를 내보냈지만 덜 열 수는 없습니다 (보기 흉한 모양-바이너리 파일처럼 보입니다). 나는 vi로 그것을 열 수 있고 그것을 고양이로 만들 수 있다는 것을 발견했다. 검색). 내가 할 수있는 방법이 있습니까?
grep -a
?
텍스트 인 바이너리 파일이 있지만 로그를 내보냈지만 덜 열 수는 없습니다 (보기 흉한 모양-바이너리 파일처럼 보입니다). 나는 vi로 그것을 열 수 있고 그것을 고양이로 만들 수 있다는 것을 발견했다. 검색). 내가 할 수있는 방법이 있습니까?
grep -a
?
답변:
grep
어쨌든 파일을 검색 하는 데 사용할 수 있습니다 . 입력 파일이 실제로 텍스트인지 아닌지는 신경 쓰지 않습니다. '남자 grep'에서 :
-a, --text
Process a binary file as if it were text; this is equivalent to the --binary-files=text option.
--binary-files=TYPE
If the first few bytes of a file indicate that the file contains binary data, assume that the file is
of type TYPE. By default, TYPE is binary, and grep normally outputs either a one-line message saying
that a binary file matches, or no message if there is no match. If TYPE is without-match, grep assumes
that a binary file does not match; this is equivalent to the -I option. If TYPE is text, grep
processes a binary file as if it were text; this is equivalent to the -a option. Warning: grep
--binary-files=text might output binary garbage, which can have nasty side effects if the output is a
terminal and if the terminal driver interprets some of it as commands.
두 번째 단락 끝에주의 표시를하십시오. grep의 결과를 새 파일로 리디렉션하고 vi / less로 검사 할 수 있습니다.
\x
정말 여기처럼 작동하지 않습니다 grep -P "\x05\x00\xc0" mybinaryfile
.
bgrep "fafafafa" test_27.6.2015.bin |less
하지만 test_27.6.2015.bin : 00005ee4 얻습니다 . 내가 이것을 찾고 있었기 때문에 나는 fafafafa를 얻는다고 가정 할 것이다 . 사람의 매뉴얼이 없습니다. 왜 그런 결과가 나오는지 아십니까?
grep -a
무엇입니까?