대체 화면은 vim, htop, screen, alsamixer, less 등과 같은 많은 "사용자 대화 형"터미널 응용 프로그램에서 사용됩니다. 응용 프로그램이 종료 될 때 사라지는 터미널 내용이므로 전체 터미널이 복원되고 응용 프로그램이 아무 것도 출력하지 않은 것처럼 보입니다.bash 스크립트의 "대체 화면"사용
필자는 자신의 셸 (bash) 스크립트에서 똑같은 것을 달성하고 싶다.하지만 이식 할 필요는 없다는 점이 다르다. 나는 리눅스와 xterm 기반의 터미널 에뮬레이터에만 집중할 것이다. 가능하다면 해결책은 tput
과 같은 것을 사용해야합니다. 그러나 일부 외부 스크립팅 언어 (또는 C와 같은 것)를 사용하고 싶지 않습니다.
비록 C를 사용하고 싶지는 않지만 (가능한 한 의존성이 거의없는 bash 스크립트 여야 함), 나는 less의 소스 코드를 살펴 보았다. 그것은 데이터베이스로 terminfo를 사용하는 것 같으며 그것의 초기화에서 "티"터미널 기능을 찾습니다. 선을 제거 할 때 대체 sceen을 사용하지 않으므로 책임있는 코드 줄을 찾았습니다.
그러나 이러한 기능은 man terminfo
에서 찾을 수 없습니다. 그러나 어쩌면 나는 이것을위한 해결책을 찾기위한 잘못된 길을 가고있다. 아마도 terminfo/tput은 내 친구가 아닙니다.
그래서 (어떻게) bash 스크립트에서 대체 화면을 사용할 수 있습니까? 누군가가 소스 코드에서 힌트를 찾을 수있는 간단한 응용 프로그램을 알고 있습니까? (C 응용 프로그램 또는 bash는 스크립트 또는 무엇이든 ...)
당신은이 명령을 사용하여 다른 화면으로 전환 할 수 있습니다
아아 아아입니다. 매력처럼 작동합니다. 감사! :) – leemes
@leemes - 사실, 당신의 질문을 다시 읽으면,'ti' 터미널 기능에 대해서 이야기 할 것입니다. 그러나'man terminfo'를 신중하게 보면, 그것은'smcup'의 termcap 이름입니다 !!! – rodrigo
Lol? 나는'ti '(질문에서 언급했듯이)를 찾았으며 그 능력을 찾지 못했다고 * 맹세 할 수있었습니다! 젠장 ... -.- – leemes