본문 바로가기
기타

[bash] screen 사용 설명서

by 초특급하품 2019. 12. 26.

screen은 terminal multiplexer로 세션 관리와 함께 여러 개의 창을 사용할 수 있는 명령이다. 백그라운드 데몬으로 실행되어 세션 걱정 없이 오래 걸리는 프로그램을 돌리기 유용하다.

요새는 더 기능이 많은 tmux를 사용하는 것 같은데, 오히려 기능이 많다 보니 열심히 사용하지 않는 입장에서 잘 익숙해지지 않았다.

 

사용방법

screen 명령으로 새로운 프로세스를 생성해서 attach 한다. ctrl+a 으로 명령 모드로 들어가면 여러 기능을 사용할 수 있다.

 

세션 attach/detach

screen -ls 으로 조회한 screen pid로 attach 할 수 있다.

$ screen -r pid

 

현재 세션에서 빠져나오려면 명령 모드에서 d를 누른다.

$ ctrl+a d

 

세션 이름 변경

세션 이름을 지정하면 -ls 에서 조회할 때 각 기능을 한눈에 보기 쉽다.

$ ctrl+a
:sessionname crawling

 

아니면 처음 세션을 생성할 때 이름을 지정할 수도 있다.

$ screen -S session_name

 

윈도우 추가

하나의 세션에서도 여러 개의 윈도우를 사용할 수 있다.

$ ctrl+a c

 

윈도우 조회/변경

$ ctrl+a "

 

명령 모드에서 따옴표(")를 누르면 현재 세션에 생성한 윈도우 목록이 나타나고 GUI로 변경할 수 있다.

 

윈도우 이름 변경

$ ctrl+a A

 

윈도우 종료

$ ctrl+a k

 

묻지 않고 바로 현재 윈도우를 종료할 수도 있다.

$ ctrl+d

 

.screenrc 환경 설정

터미널답게 ~/.screenrc 파일로 여러 설정을 변경할 수 있다. 최소한으로 현재 세션에서 여러 윈도우를 한눈에 볼 수 있는 hardstatus은 설정하는 것을 추천한다.

hardstatus alwayslastline '%{WB}%H %{W}| %?%{w}%-w%?%{+b g}[%{W}%{r}%n%{W} %t%?{%u}%?%{-b g}]%{W}%?%+w%?%=%{G}| %{Y}%Y-%m-%d %c:%s'

 

hardstatus의 도움으로 모든 윈도우를 쉽게 볼 수 있기 때문에 n번째 윈도우로 이동할 수 있는 아래 명령어로 더 쾌적하게 작업할 수 있다.

$ ctrl+a n

'기타' 카테고리의 다른 글

ssh 터널링  (0) 2020.02.02
mongodb index를 통한 쿼리튜닝  (0) 2019.12.31
간단한 파일 대칭키 암호화/복호화  (0) 2019.12.24
MySQL DATE INTERVAL 함수 함정  (1) 2019.12.13
[bash] 간단한 부하테스트 script  (0) 2019.12.12

댓글