관련 문서
http://linux.sarang.net/board/?p=read&table=tip&no=5673&page=&o[at]=s&o[sc]=t&o[ss]=screen&o[st]=a


원격에서 작업하다 보면 여러창을 보고 싶을때가 많지만,
따로 로그인 하기도 귀찮고, 여러창 왔다갔다 할때도 어느
터미널이 어느 기계인지 많아지면 관리가 안되죠 --;
이럴때 사용하면 편리한 것이 screen입니다.

screen은 한 터미널 화면에서 여러 쉘과 프로그램을 띄울수
있으며, 또한 세션 관리 기능도 지원해서 터미널을 종료해도
나중에 다시 그 세션으로 복귀할수 있기 때문에 정말
편리합니다. 저는 이제 로컬에서도 screen을 애용하고 있네요.

먼저 시작은

% screen
또는
% screen -S 세션명

으로 시작하고, screen 실행후 모든 명령은 Ctrl-a로 시작합니다:

Ctrl-a, c : (create) 새로운 쉘이 생기면서 그 쉘로 이동
Ctrl-a, a : 바로 전 창으로 이동
Ctrl-a, n : (next) 다음 창으로 이동
Ctrl-a, p : (previous) 이전 창으로 이동
Ctrl-a, 숫자 : 숫자에 해당하는 창으로 이동
Ctrl-a, d : (detach) screen 세션에서 빠져나옴
Ctrl-a, x : lock screen

Ctrl-a, S : (split) 창을 나눔 (region)
Ctrl-a, Tab : 다른 region으로 이동
Ctrl-a, Q : 현재 region을 제외한 나머지 숨기기

위 명령 정도를 알고있으면, 불편하지 않게 사용할수 있으며,
detach 시 세션이 종료되는 것은 아니고

% screen -r 세션명

으로 그전 세션을 다시 불러들일수 있습니다. 여러 창을 쓴다는
장점도 있지만, 세션 관리가 되는것도 아주 큰 장점입니다.
세션이 여러개 있으면 screen -r 하면 세션명이 쭉 나오고
(-S로 지정하지 않았으면 자동으로 이름이 할당됩니다)
세션이 하나면 그 세션이 바로 불러들여지게 됩니다.

세션을 완전히 종료하기 위해서는 모든 창에서 빠져나오면(exit 등으로)
screen을 빠져나옵니다.

split으로 화면을 나누면, 나눠진 공간(region) 별로 다른 창으로 전환할
수 있습니다. 자세한 것은 man을 참고하세요.



===========================================================
Ctrl-a, A: 현재 창의 title을 수정
Ctrl-a, w: 창 리스트 보여주기
Ctrl-a, a: 이전창으로 이동

screen 목록 보여주기
$ screen -list

Ctrl-a, esc: Copy 모드로 전환. Copy 모드에서는 vi의 이동키로 이동을
할 수 있다. 커서 이동을 할 수 있고 특정 블럭을 복사하는 기능으로
사용한다. 먼저 시작 위치에서 space키를 누르고 끝 위치에서 space로
누르면 해당 사이가 buffer로 이동된다.

Ctrl-a, ]: buffer의 내용을 stdin으로 쏟아 넣는다. 이 기능은
vi의 입력모드에서 사용하면 유용하다.

제 경험으로는 창을 4개 이상 뛰우는건 비효율적인거 같습니다.
2-3개가 가장 적당할듯.. 프로그래머인 경우 screen & vim의 사용을
적극 추천



===========================================================

저는 한쪽손으로만 치는게 불편해서 ctrl+o를 command key로 사용합니다.

screen -e^Oo 라고 치면 ctrl+o를 command key로 사용할 수 있습니다.

(혹은 쉘에 따라 screen "-e^Oo" )

참고로 , ctrl + command key + ? => 간단한 help. :-)
Posted by 큰바우
: