tail -f 및 ssh-ed를 실행할 때 터미널(OS X)에서 스크롤하면 이상한 문자가 나타납니다.

tail -f 및 ssh-ed를 실행할 때 터미널(OS X)에서 스크롤하면 이상한 문자가 나타납니다.

원격 컴퓨터에 SSH로 연결되어 실행 중입니다 tail -f. 트랙패드를 사용하여 위/아래로 스크롤할 때마다 다음과 같은 이상한 문자가 나타납니다.

OB^[OB^[OB^[OB^[OB^[OOB^[OB^[OB^[OB^[OB^[O

이전에는 이런 일이 발생하지 않았으며 이전 로그를 보기 위해 위로 스크롤할 수 없습니다. 왜 이런 일이 발생하며, 어떻게 비활성화할 수 있나요?

답변1

요약: 메뉴 설정 보기->대체 화면 표시/숨기기를 확인하세요. "대체 화면 모드"에 있을 수 있습니다. 또는 다른 스크롤 동작을 얻으려면 스크롤할 때 Shift 키를 사용해 보십시오.

^[Control-leftbracket(이스케이프 문자라고도 함)의 인쇄 가능한 표현입니다.Infocmp이것이 ^[OB아래쪽 화살표 키에 대한 xterm 이스케이프 시퀀스임을 나타냅니다( ^[OA위쪽 화살표 시퀀스). 터미널은 xterm을 에뮬레이트하고 마우스 스크롤을 화살표 키 시퀀스로 변환합니다.

터미널에서 마우스를 사용하는 것에 대한 과거 토론을 찾았습니다.

그러나 그것들은 모두 이전 버전의 OSX에 관한 것이며 시간이 지남에 따라 이 영역에서 터미널이 변경된 것 같습니다.이 기사요세미티에서 어떻게 작동하는지 설명하지만 기술적인 세부 사항은 조금 부족합니다. 나머지 부분은 요세미티에서 터미널을 사용하여 찾은 것입니다.

터미널에는 마우스 스크롤을 처리하는 두 가지 모드가 있습니다.

  1. 한 모드에서 스크롤하면 터미널이 뷰포트를 스크롤하므로 터미널의 스크롤백 버퍼(화면 상단에서 스크롤된 줄)를 볼 수 있습니다. 터미널을 스크롤하면 OSX 스크롤바가 나타납니다.
  2. 다른 모드에서는 스크롤하면 터미널이 위쪽 화살표 및 아래쪽 화살표 시퀀스를 보냅니다. 터미널에서 실행되는 프로그램이 이를 처리할 수 있기를 바랍니다.

스크롤하는 동안 Shift 키를 누르면 일시적으로 모드 간에 전환할 수 있습니다. 예를 들어 터미널이 명령 프롬프트를 표시하는 동안 스크롤은 터미널 창을 스크롤하고 Shift-스크롤은 bash 명령 기록을 스크롤합니다.

터미널은 또한대체 화면. vim또는 같은 전체 화면 프로그램은 less터미널을 대체 화면으로 전환하여 자체 콘텐츠를 표시할 수 있습니다. 해당 프로그램을 종료하면 터미널이 기본 화면으로 다시 전환됩니다. 터미널의 스크롤 동작이 대체 화면에서 변경될 수 있기 때문에 이것을 언급합니다.

일반적으로 첫 번째 스크롤 동작이 주요 동작이고 두 번째 동작을 얻으려면 Shift 키를 눌러야 합니다. 하지만 터미널->기본 설정->프로필->키보드로 이동하세요. 하단에는 "대체 화면 스크롤"이라는 확인란이 있습니다. 해당 상자를 선택하면 대체 화면에서 스크롤 동작이 반전됩니다. 선택하면 두 번째 스크롤 동작이 대체 화면의 기본값이 되며 첫 번째 동작을 얻으려면 Shift 키를 눌러야 합니다.

예를 들어 명령줄에서 마우스를 스크롤하면 터미널의 스크롤백 버퍼를 볼 수 있습니다. 그런데 vim파일 편집을 시작하면 대체 화면으로 전환되고, 갑자기 마우스를 스크롤하면 커서가 움직입니다. vim에서 원하는 것이 바로 이것이다.

문제를 해결하면 터미널에 대체 화면이 표시되는 것 같습니다. 전환할 수 있는 메뉴 옵션이 있습니다(보기->대체 화면 표시/숨기기). 또는 실행 중인 작업이 터미널을 대체 화면 모드로 전환하는 것입니다. 어쩌면 당신은 screen또는 tmux이와 유사한 것을 사용하고 있습니까? 해결 방법으로 Shift 키를 사용하여 원하는 스크롤 동작을 얻을 수 있습니다. 아니면 해당 확인란을 선택 취소할 수도 있습니다.

답변2

터미널 에뮬레이션을 xterm-256color에서 vt100으로 변경했습니다. 저는 환경 설정 => 프로필 => 고급 "터미널 선언:" 드롭다운에서 이 작업을 수행했습니다.

관련 정보