처음부터 바이너리 파일을 따르는 방법 (la "tail -f")은 무엇입니까?


10

처음부터 이진 파일을 따르는 것이 가능 tail -f합니까?

예를 들어 scp파일을 원격 서버에 보내고 다른 프로세스에 파일을 공급하려는 경우와 같이 일부 경우에 유용 합니다 (예, ssh+ cat트릭을 사용할 수 있음을 알고 있습니다 ).

FM에서 읽는 한, tail텍스트 파일을 염두에두고 작성되었습니다.

표준 posix 도구를 사용하여 이러한 작업을 수행하는 간단한 방법이 있습니까?


tail텍스트 파일에만 사용할 수있는 곳은 어디 입니까?
rozcietrzewiacz

@rozcietrzewiacz 오래된 유니 세에서는 tail이진 파일에 항상 대응하지 않는 텍스트 지향 유틸리티 는 입력 파일의 마지막 개행 이후 널 바이트를 질식 시키거나 스트레이 바이트를 생략 할 수 있습니다. 현대 시스템은 대처합니다.
Gilles 'SO- 악마 중지

답변:


12

tail이진 데이터 및 텍스트와 함께 작동합니다. 파일의 맨 처음부터 시작하려면을 사용할 수 있습니다 tail -c +1 -f.


이것은 누구에게도 효과가 없습니까? 사용할 때 나타나는 16 개의 문자열이있는 이진 파일이 cat bin_file | strings - -o | grep match_string있지만 사용할 때 tail -c +1 -f bin_file | strings - -o | grep match_string9 번째 일치 항목을 초과하지 않습니다. 또한 줄 번호 -o가 cat 출력과 비교하여 1보다 적습니다. grep을 제거하면 16 개의 일치 항목 (다른 모든 항목과 혼합 됨)을 모두 얻을 수 있으므로 문제가 grep 인 것으로 생각했지만 perl one-liner를 시도했지만 같은 위치에서 멈 춥니 다 ...
hepcat72
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.