[Ubuntu, 아이패드] screen 명령어 창 분할 작업 Develop Tip

아주 초창기에 RS-232C 인터페이스를 이용한 시리얼 통신용
에뮬레이터를 이용하여 터미널 화면 창을 띄우고 작업 및 채팅 등등을 할 수 있었습니다.

최근에는 리눅스 박스 등에 시리얼 콘솔을 활성화 해 놓고 이것을 접속할 때
시리얼 터미널 에뮬레이터를 이용하여야 하며, 이것을 위한

$ screen /dev/ttyS0 9600

과 같은 식으로 screen 이라는 명령어가 터미널 에뮬레이션을 할 수 있었습니다.

그런데 screen의 기능이 에뮬레이션은 극히 일부임을 알게 되었습니다.

예를 들어, 아이패드에서,

iSSH를 통하여,

원격 시스템에 접속할 수 있습니다. 
(위의 메뉴에서 "Enable Option Mapping" 을 선택하면 option<alt> 키가 Control 키를 대신할 수 있습니다.)

위와 같은 경우에 동시에 화면을 여러개 띄워놓고 보면서 복사하고 등등의 창 기능을 활용하고 싶을 욕심이 나는 경우가 많습니다.
결국 VNC 혹은 RDP 등등의 원격 데스크탑 등을 이용하기도 하는데, 접속 된 서버가 터미널만 지원한다고 하면 이런 경우에도 위의
요구 사항을 만족 시킬 수 없습니다.

이런 때 사용할 수 있는 것이 screen 입니다.
터미널을 접한지 이십년이 지났건만 이제라도 이 명령을 이용해 보려 합니다.
(무엇이던 <남보다> 늦었다고 생각할 때가 <내게는> 가장 빠르다 라는 것은 진리입니다)

접속하고자 하는 쉘의 홈 디렉터리에 .screenrc 라는 파일을 만들어 다음의 내용을 넣습니다.
(상세한 내용은 매뉴얼 페이지를 참조하시면 됩니다)
(OSX 인 경우 기본 /usr/bin/screen 명령은 vertical 화면 분할이 되지 않아 아래 rc 파일을 수정해야 합니다)

$ vi .screenrc
# First of all making four screen
screen -t window0 bash
screen -t window1 bash
screen -t window2 bash
screen -t window3 bash
# at first window select window0
select window0
# and then split vertically
split -v
# and split left screen horizontally
split
# down to screen focus and select window1
focus down
select window1
# down to (upper right) screen focus and select window2
focus down
select window2
# and split right screen horizontally
split
# down to (lower right) screen focus and select window3
focus down
select window3
focus top
# set focus binding key
bind j focus down
bind k focus up
bind t focus top
bind b focus bottom

위와 같이 .screenrc 파일을 홈디렉터리에 저장하고,
일반 터미널에서 screen 명령을 해리면,

$ screen

위와 같이 네 개로 분할된 창이 나타납니다.

Control+a 명령을 눌러 모든 screen 명령이 시작합니다.

다음과 같이 분할된 창을 이동합니다.

Control+a j : 다음창 이동
Control+a k : 이전창 이동
Control+a t : 처음창 이동
Control+a b : 마지막창 이동

이제 아이패드의 iSSH 접속 화면을 보면,

동일하게 적용되는 것을 볼 수 있습니다.
이제 터미널, 심지어는 시리얼 접속을 통해서도 분할 된 창 명령을 수행할 수 있습니다.

이제 간단히 창을 이동해서 복사 및 붙여넣기를 해 보면,

Control+a [ : 복사 모드 진입

위와 같은 복사 모드에서는 vi 명령과 거의 유사한 커서 이동이 가능합니다.
위와 같이 복사 모드로 들어간 상태에서 바로,

j : 커서를 좌측으로 이동
k : 커서를 위쪽으로 이동
l : 커서를 오른쪽으로 이동
j : 커서를 아래로 이동

등으로 복사할 위치로 이동을 한 다음,

Space 키를 누르고 다시 커서를 이동하여 복사할 문자열을 선택한 다음,
Enter 키를 눌러 복사모드를 마칩니다.

이제 창을 이동하고,

Control+a ] : 복사한 내용 붙여넣기

와 같이 복사/붙여넣기도 가능합니다.

MS WIndows 도 버전 3이 되기 전에는 이렇게 붙박이 창만 있었다는 사실에
그 예전에 이미 이런 개념이 존재했다는 것 자체가 매우 흥미롭습니다.

어느 분께는 도움이 되셨기를 바라면서...

핑백

  • 지훈현서 : [OS X 요세미티] 강원전자 Netmate USB2Serial 이용하기 2015-06-04 18:31:27 #

    ... ud rate (38400)을 주고 실행을 하면, 위와 같이 잘 연결되는 거을 확인할 수 있었습니다. Screen 명령을 이용하여 멀티창도 가능합니다만... (해당 블로그 내용 참조) 위에서 연결된 것을 해지 하려면, Control+a Control+\ 를 누르면, 위와 같이 정말로 끝나겠는가 물어보는 내용이 터미널 하단에 나타나고 ... more

  • 지훈현서 : [OS X, Ubuntu] 터미널에서 tmux 사용해 보기 2017-01-02 10:07:17 #

    ... 는 모든 분들께 인사드립니다."새해 복 많이 받으십시오" 지난번 우분투나 아이패드에서 터미널로 연결하였을 당시 ​터미널에서 화면을 분할하여</a><a href="http://mcchae.egloos.com/10892496">사용하는 것으로 시스템 디폴트 명령어인 "screen" 을 살펴본 적이 있습니다. 영문 위키피디어에서 tmux ... more

덧글

댓글 입력 영역

구글애드텍스트