터미널에 명령의 전체 출력이 표시되도록 하려면 어떻게 해야 합니까?

터미널에 명령의 전체 출력이 표시되도록 하려면 어떻게 해야 합니까?

터미널 명령:watch netstat -nalp

출력을 얻었지만 아래로 스크롤하여 대부분을 볼 수 없습니다. 단말기 하단(박스) 확장만 보입니다. 위쪽 및 아래쪽 화살표, Enter, Tab, Page Up, Page Down을 시도했지만 아무것도 작동하지 않습니다. 기본적으로 확장 터미널에 표시되는 내용만 볼 수 있습니다.

또한 "모두 선택"하면 가능하지만 "복사"하기 전에 잠시 후에 사라집니다. 강조 표시된 화면은 "강조 해제"됩니다. 터미널 상단에서 "편집, 모두 선택"을 시도하고 마우스로 강조 표시했습니다. 결과는 동일합니다.

ip addr입력 등과 같은 "모든" 다른 명령에는 이러한 문제가 없습니다 ifconfig -a. 위아래로 스크롤하고 모두 선택해도 사라지지 않는 등의 작업을 할 수 있습니다.

왜 이런 일이 발생하는지, 그리고 해결 방법(가능한 경우)을 아는 사람이 있습니까?

답변1

"watch"는 "netstat -nalp" 명령을 다시 실행하고 마지막 실행의 변경 사항을 반영하기 위해 화면을 다시 그립니다. "watch"는 "curses" 라이브러리를 사용하므로 실행 사이에 변경된 문자만 표시하는 데 필요한 수준으로 출력을 최소화할 수 있습니다. 그러나 "다시 그려지는" 텍스트를 선택하려고 하면 일부 터미널 에뮬레이터(예: "putty")가 선택한 텍스트를 다시 선택(선택 취소)한다는 것을 알 수 있습니다.

(나는 OSX "터미널"이 이 문제를 겪지 않는다는 것을 알았습니다 - 다른 문제가 있을 수 있습니다).

"stty" 설정에 따라 수행할 수 있는 작업은 키 입력(XOFF라고 함)을 보내 '<CTRL>S'화면 업데이트를 일시적으로 중지하는 것입니다. 선택 항목을 선택하고 복사한 후 '<CTRL>Q'키 입력(XON이라고 함)을 보내 터미널 출력을 복원할 수 있습니다.

관련 정보