답변1
스크롤하는 방법에 대해서는 언급하지 않았습니다. 터미널 창 자체를 스크롤하려고 하면 Tmux가 전체 화면 응용 프로그램이므로 작동하지 않습니다. 이는 스크롤 vim
(또는 다른 편집기)을 시도하는 것과 같습니다.
그러나 몇 가지 옵션이 있습니다.
Tmux 복사 모드
Tmux의 롤백 메커니즘(복사 모드라고 함)을 활성화하기 위한 기본 키 바인딩은 Prefix(보통 Ctrl+ B)이고 그 뒤에 가 옵니다 [. 그런 다음 화살표 키를 통해 스크롤하십시오.
전체 버퍼 저장
(적어도) 두 가지 방법 중 하나로 전체 버퍼를 파일로 검색할 수도 있습니다. 먼저 메시지가 표시되면 다음을 수행할 수 있습니다.
tmux capture-pane -pS - > ~/tmux-buffer.txt
하지만 Python 프로그래밍이 실행 중이라고 언급했으므로 다음을 수행해야 합니다.
- 다음 명령을 사용하여 Tmux 명령 프롬프트에 액세스하십시오.Prefix:
- 다음 명령을 사용하여 창을 버퍼에 저장합니다.
capture-pane -S -
- Tmux 프롬프트에 다시 액세스하십시오( Prefix:).
- 버퍼를 파일에 저장:
save-buffer ~/tmux-buffer.txt
또 다른 방법은 이전 두 옵션을 결합하고 tmux
다음에서 명령을 실행하는 것 입니다 run-shell
.
- 다음 명령을 사용하여 Tmux 명령 프롬프트에 액세스하십시오.Prefix:
- 다음을 통해 첫 번째 Tmux 명령을 실행하십시오.
run-shell "tmux capture-pane -pS - > ~/tmux-buffer.txt"
버퍼를 다른 호출기로 보내기
명령줄에서:
tmux capture-pane -pS - | less
Tmux 명령 프롬프트에서:
run-shell "tmux capture-pane -pS - | less"
더 좋은 점은 이스케이프 코드를 유지하면서 다른 형식과 색상을 포함할 수 있다는 것입니다.
tmux capture-pane -epS - | less -r
티
tee
마지막으로, 이 상황에서의 유용성을 잊지 마세요. 프로그램의 출력을 캡처하려는 것을 미리 알고 있는 경우 다음 명령을 사용하여 이를 화면과 파일로 보냅니다 tee
.
python myprog.py 2>&1 | tee ~/myprog-out.txt
물론 이것은 stdout
and를 캡처합니다.stderr
물론 이전의 모든 Tmux 치료법과 마찬가지로 추가적인 사전 계획은 실제로 필요하지 않습니다.