xterm 크기 조정으로 인해 쉘 혼란 발생

xterm 크기 조정으로 인해 쉘 혼란 발생

저는 xterm을 터미널 에뮬레이터로 사용하는 Reflect x를 사용하고 있습니다. 창을 여러 번 최대화하고 최소화하면 이전 명령에 액세스하려고 할 때 텍스트가 깨집니다. 이 질문은 다음과 매우 유사합니다.이것하지만 저는 bash 대신 ksh 쉘을 사용하고 있습니다. 그렇다면 ksh 버전의 솔루션은 무엇입니까? 감사해요!

답변1

실제 xterm 창 크기 조정 문제를 해결/해결하려면 일반적으로 resize및 명령을 사용해야 합니다 .reset

지침 resize:

$ eval `resize`

단독으로 실행 하면 resize열과 행 설정이 보고됩니다.

지침 reset:

$ reset

인용하다

답변2

reset명령은 크기 조정을 정리하는 데 도움이 되지 않습니다.

resize명령이 도움이 될 수 있지만 문제가 있습니다. 두 가지 주요 사용 사례가 있습니다 resize.

  • 예를 들어 NAWS(Negotiation About Window Size)를 지원하지 않는 직렬 인터페이스를 통해 연결하는 경우 시스템에 화면 크기를 알릴 수 있습니다. 이는 FAQ에 유용합니다.
  • 기존 사용시 불필요하게 설정되었던 환경변수를 수정하였습니다 resize. 그러면 오류 보고서가 생성됩니다.

resize프로그램은 원래 termcap 기반 시스템이 일반적이었을 때 작성되었습니다. 일반적인 termcap 설명을 보면 화면이 얼마나 큰지 알 수 있습니다. 1980년대에 작성된 대부분의 termcap 응용 프로그램에는 화면의 실제 크기를 묻는 시스템 호출이 포함되어 있지 않았기 때문입니다. 이는 1980년대 후반에 정보를 얻기 위한 신호 및 시스템 호출이 도입 되면서 SIGWINCH바뀌기 시작했습니다 .

LINES그러나 이러한 레거시 응용 프로그램으로 인해 (기본적으로) 및/또는 COLUMNS변수가 설정된 경우 해당 변수가 termcap 설명을 재정의한다는 규칙이 설정되었습니다 .

여태까지는 그런대로 잘됐다.

LINES그러나 일부 응용 프로그램(본질적으로 termcap 응용 프로그램인 bash와 같은 셸 포함) 은 실제 화면 크기보다 이러한 변수에 더 많은 주의를 기울입니다 .COLUMNS

만약 너라면평가하다출력에서 resize이러한 변수를 설정합니다. 창 크기가 다시 조정될 때 화면 크기 변경을 따르는 프로그램이 더 이상 그렇게 하지 않는다는 것을 알 수 있을 때까지는 괜찮아 보입니다.

문제 없습니다. 방금 했던 작업을 반복하면 됩니다 resize.

반면에 그냥 실행하면resize 아니요출력을 평가하여 시스템의 화면 크기 개념을 업데이트합니다.

추가 자료:

관련 정보