파일을 텍스트로 표시하도록 줄이십시오


14

때때로 파일을 이진 파일로 잘못 인식하지 못하고 LHS에서 16 진 덤프를 표시하려고 시도합니다 (일반적으로 영숫자가 아닌 문자를 포함하지만 여전히 인쇄 가능한 ASCII 문자를 포함하는 파일). 텍스트로 인식하도록 강제하는 방법은 무엇입니까?


다른 답변을 찾고 있습니다. cat somefileASCII로 표시 되는 로그 파일이 있지만 less somefile이진 파일로 표시 될 수 있습니다. echo $LESSOPEN비어 있고 less -L도움이되지 않습니다.
Nathan Long

2
@NathanLong 여기에있는 해결책으로 문제가 해결되지 않기 때문에 새로운 질문을 제기하는 것이 가능할 것입니다 (단지 유의하십시오). 그러나 "이진일 수 있으며 이와 같이 표시 될 수 있습니다"라고 말하면 데이터의 16 진 표현이 표시되거나 원시 이진 데이터 (모든 이상한 기호 등)가 표시됩니까?
Patrick

LHS 란 무엇입니까? 그것은 나에게 새로운 것입니다.
dfc

1
@dfc 왼쪽 입니다.
Maciej Piechotka

답변:


19

에 대해 LESSOPEN필터를 설정 했다고 생각합니다 less. less필터를 사용하지 말라고 다음을 시도하십시오 .

less -L my_binary_file

추가 탐색을 위해을 (를) 시도하십시오 echo $LESSOPEN. 아마 쉘 스크립트의 이름이 들어있을 것입니다 ( /usr/bin/lesspipe나를 위해). 어떤 종류의 필터가 있는지 읽을 수 있습니다. 또한을 시도 man less하고 입력 전 처리기 섹션을 읽으십시오 .


4

LESSOPEN문제 가 아닌 경우 . 다음과 같은 less옵션을 시도 할 수 있습니다.

  1. -f또는 --force: 비정규 파일을 여는 것 외에도 "이진 파일을 열 때 경고 메시지가 표시되지 않습니다".
  2. -r또는 --raw-control-chars: "원시 제어 문자가 표시됩니다. 기본값은 캐럿 표기법을 사용하여 제어 문자를 표시하는 것입니다. 예를 들어 control-A (octal 001)는로 표시됩니다 ^A. 경고 : -r옵션을 사용하면 추적을 유지할 수 없습니다. (화면이 각 유형의 제어 문자에 반응하는 방식에 따라 달라지기 때문에) 화면의 실제 모양에 따라 긴 행이 잘못된 위치에 분할되는 등 다양한 표시 문제가 발생할 수 있습니다.
  3. -R또는 --RAW-CONTROL-CHARS: -r위 형식이 약하면 ANSI "color"이스케이프 시퀀스 만 "raw"형식으로 출력됩니다. "-r과 달리 대부분의 경우 화면 모양이 올바르게 유지됩니다." 예를 들어 ANSI 색상 제어 시퀀스를 사용하는 로그 파일을 볼 때 유용합니다.

키를 누른 -다음 r다시 실행하지 않고 실험 할 수 있습니다 less. 이러한 옵션을 LESS환경 변수에 추가 하여 설정을 영구적으로 만들 수 있습니다 (예 : 셸 프로파일 파일 수정). 터미널에 색상이 표시 될 수 -R있으면 LESS설정에 추가하는 것이 좋습니다 . 터미널이 텍스트 파일과 동일한 문자 인코딩을 사용하도록 구성되어 있는지 확인해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.