파일 내용이 차지하는 콘솔 공간

파일 내용이 차지하는 콘솔 공간

내 문제를 이해하려면 아래 예를 참조하세요. 내 콘솔 프롬프트가 다음과 같다고 생각해보세요.

user@server $ ls
"I opened a file temp"
user@server $ vi temp

temp는 같은 창에서 열리고 temp를 닫으면 돌아오지 않습니다.

user@server $ ls
user@server $ vi temp
user@server $

대신에 나는 이런 식으로 돌아왔다.

user@server $ ls
user@server $ vi temp
"temp file content"
"temp file content"
"temp file content"
user@server $

이는 내 눈에 보이는 화면 공간을 차지하고 있으며 이 파일 콘텐츠로 인해 일부 중요한 출력이 손실될 수 있습니다.

답변1

터미널에는 "대체 화면"이라는 기능이 있습니다. 이를 통해 프로그램은 다른 가상 "화면"을 사용하고 종료 시 이전 화면을 복원할 수 있습니다.

이 기능을 지원하는 터미널 에뮬레이터가 필요합니다. Gnome-terminal, urxvt 및 xterm이 모두 작동합니다. 기본적으로 비활성화된 경우는 본 적이 없지만 비활성화된 경우 Xresources를 사용하여 활성화할 수 있습니다. xterm 또는 urxvt가 있는 경우 ~/.Xresources또는 파일 에 ~/.Xdefaults다음을 추가하십시오 .

xterm의 경우:

XTerm*titeInhibit: false

urxvt의 경우:

urxvt*secondaryScreen: true

일부 GUI 터미널에는 대체 화면을 활성화하는 확인란이 있는 옵션 패널이 있을 수 있습니다.

추가 리소스:

http://blogmal.42.org/tidbits/titeinhibit.story

http://shallowsky.com/linux/noaltscreen.html

답변2

screen(또는 byobu선호할 만한 확장 버전이 있습니다 )을 사용해 보세요 screen. 표준 기능 이상의 특별한 터미널 지원이 필요하지 않습니다.

다음과 같이 시작합니다.

screen

또는

byobu

단순한!

그런 다음 새 쉘이 열립니다. 안으로 들어가면 두 번째 껍질을 열 수 있습니다동시에을 누른 Ctrl-Ac다음 Ctrl-A1와 을 사용하여 전환 할 수 있습니다 Ctrl-A2. 이 과정을 반복하면 한 번에 더 열 수 있습니다.

아래와 같이 다른 보기에서 vim(또는 다른 것)을 열 수도 있습니다.이내에기존 화면 보기 중 하나):

screen vim blah

추가 보너스로 (셸을 종료하는 대신) 터미널을 닫고 로그아웃한 다음 다음에 다시 로그인할 때(컴퓨터가 아직 다시 시작되지 않은 경우) 이전 세션에 다시 연결할 수 있으며 모든 것이 여전히 당신이 떠난 것처럼 평범합니다.

screen -r

단점은 터미널 자체의 스크롤 기능을 사용할 수 없다는 것입니다. screen스크롤 기능을 사용해야 합니다. 을 클릭한 Ctrl-AEsc다음 페이지를 위아래로 이동할 수 있고 이를 사용하여 일반 모드로 돌아갈 수 있습니다 Esc.

답변3

vim-tiny 버전이 아닌 전체 vim 버전을 사용하세요. vim과 vim-tiny는 모두 vi원래 편집기를 대체하므로 명령줄에서 편리하게 호출할 수 있습니다 . 많은 배포판에는 vim-tiny가 표준으로 제공됩니다.

관련 정보