원격에서 작업하다 보면 여러창을 보고 싶을때가 많습니다.
이럴때 보통 여러개의 터미널을 띄워서 사용 합니다.
그런데 창을 여러개 띄우고 왔다 갔다 하려다 보면 클릭하기도 귀찮고 헤깔리기도 하죠.. 후후.
이럴때 screen 명령을 사용 해보면 많은 도움이 될것입니다.
screen 은 한 터미널로 한번만 로그인 한후에 여러 쉘과 프로그램을 사용할 수 있습니다.
또한 세션관리 기능도 지원 한답니다.
그래서 screen 을 종료하고 심지어 터미널까지 로그아웃하고 종료 하여도 세션이 유지 되고 있습니다.
다음에 다시 터미널로 로그인후 screen으로 세션을 불러와서 다시 이전 작업을 이어서 할 수 있습니다.
nohup 으로 프로그램을 실행 시킬 필요도 없겠죠.. 훗..
이제 nohup 은 꼭 필요 할때만 사용하시고 screen 을 애용해보면 어떨까요..?. 하하.
또한 문서작업이나 텍스트 작업 프로그래밍 작업시 screen 과 vim을 함께 사용하면 좋은 궁합이 될것입니다.
여러분도 꼭 한번 사용 해보시라고 권해 봅니다.
(참고 : screen 은 일종의 가상 터미널 내지는 가상 콘솔이라고 보면 될 것 같습니다.)
그럼 screen 명령에 대한 설명을 시작 합니다.
1. 쉘모드 명령어
screen
: screen 을 시작 하는 기본 명령입니다.
: 기본 세션명으로 시작합니다.
screen -S 세션명
: -S 다음에 주는 세션명으로 시작합니다.
screen -list
: -list 옵션을 주고 실행하면 이전에 작업했었던 screen 리스트가 있으면 세션명과 함께 리스트를 보여줍니다.
screen -R 세션명
: 이전에 세션이 있을 경우 -R 다음에 오는 세션명으로 이전 작업을 불러옵니다.
: -R 다음에 세션명을 주지 않았을 경우에는 이전 세션이 한개만 있을 경우 그 작업을 불러옵니다.
: 이전 작업이 여러개 있을 경우에는 이전 작업 리스트를 보여줍니다.
: 이 경우에는 원하는 세션명을 주고 시작 하면 되겠죠. ^__^
2. screen 실행후 명령어
screen 실행후의 명령어는 Ctrl-a로 시작합니다:
Ctrl-a, c : (create) 새로운 쉘이 생기면서 그 쉘로 이동
Ctrl-a, a : 바로 전 창으로 이동
Ctrl-a, n : (next) 다음 창으로 이동
Ctrl-a, p : (previous) 이전 창으로 이동
Ctrl-a, 숫자 : 숫자에 해당하는 창으로 이동
Ctrl-a, ' : 창번호 또는 창이름으로 이동 ( ' => 싱글 쿼테이션 )
Ctrl-a, " : 창번호를 보여준다. ( " => 더블 쿼테이션 )
Ctrl-a, A : 현재 창의 title을 수정
Ctrl-a, w : 창 리스트 보여주기
Ctrl-a, esc : Copy 모드로 전환. Copy 모드에서는 vi의 이동키로 이동을 할 수 있다.
Crtl-a, [ 커서 이동을 할 수 있고 특정 블럭을 복사하는 기능으로 사용한다.
먼저 시작 위치에서 space 바를 누르고 끝 위치에서 space 바를 누르면 해당 부분이 buffer로 복사된다.
Ctrl-a, ] : buffer의 내용을 stdin으로 쏟아 넣는다.
이 기능은 vi의 입력모드에서 사용하면 유용하다.
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을 제외한 나머지 숨기기
그리고 마지막 명령으로 세션을 완전히 빠져 나오는 명령입니다.
exit : screen 의 쉘상에서 exit 를 치고 엔터를 하면 세션이 완전히 종료 됩니다.
이상 위의 명령어 들만 알고 있으면 screen 사용시 불편하지 않게 screen 을 사용 할 수 있을 겁니다.
참 고
다른 사용자 분들의 의견을 보면 screen 화면을 2, 3 개정도 띄우고 사용하는게 가장 적당하다고 합니다.
4개 이상 띄우고 사용하다보면 불편하다고 하네요.
여러분들은 어느정도가 적당한지 한번 사용해보시고 판단 하시기 바랍니다.
기타 더욱 자세한 내용을 아시고 싶으시면 man 페이지나 /usr/doc/screen 을 참고하시기 바랍니다.
댓글 없음:
댓글 쓰기