Shell screen 의 용법

1545 단어
SSH 가 리 눅 스에 원 격 으로 로그 인 한 후 작업 을 수행 할 때 네트워크 가 끊 기거 나 전기 가 끊 기거 나 컴퓨터 가 깨 져 클 라 이언 트 가 원 격 서버 와 연결 되 지 않 아 실행 중인 작업 이 끊 길 수 있 습 니 다.일반적으로 오래 걸 리 는 작업 은 nohup sh xxx. sh & 로 실 행 됩 니 다. 그러나 nohup 은 조작 에 개입 할 수 없습니다. kill 이 라 고 해도 귀 찮 습 니 다. 프로 세 스 의 pid 를 찾 아야 합 니 다.
screen 의 장점 은 nohup 처럼 실행 중인 작업 을 저장 할 수도 있 고 작업 을 수행 하고 있 는 'screen' 으로 쉽게 복원 할 수도 있다 는 것 이다.클 라 이언 트 가 어떤 천재 와 인재 가 발생 하 더 라 도 서버 측은 예정대로 실행 할 수 있다.Screen 은 전체 화면 창 관리자 라 고 불 리 며 물리 적 터미널 에서 여러 개의 가상 터미널 효 과 를 쉽게 얻 을 수 있 습 니 다.그리고 이 가상 터미널 에 서 는 여러 창 을 만 들 수 있 습 니 다.
예 를 들 어 로그 인 후:
screen    # 创建一个虚拟终端,生成默认的[pid.tty.host]名称
ctrl+a d    # 断开刚创建的终端,回到创建前环境
screen -S Develop    # 创建另一个终端,命名为Develop
screen -S 测试    # 在Develop的screen环境中,再创建一个终端,命名为测试
crtl+a d    # 断开刚创建的“测试”终端
screen -ls    # 查看已存在的虚拟终端,会告诉你每个终端的sessionid,如下:
#There are screens on:
#        24027.pts-2.xxx-host (Detached)
#        24489.Develop   (Detached)
#        25062.测试      (Attached)
#3 Sockets in /var/run/screen/S-work.
screen -r 24489    # 回到Develop终端中
exit    # 终止并退出Develop终端

위 에서 말 한 것 은 screen 이 터미널 을 만 드 는 것 이 고 터미널 에 창의 개념 이 하나 더 있 습 니 다.터미널 은 브 라 우 저 와 같 습 니 다. 창 은 브 라 우 저의 tab 페이지 입 니 다.
screen -r 24027    # 回到之前创建的终端中,一定要在screen终端中才可以创建窗口
ctrl+a c    # 创建窗口,然后随便在这个窗口中敲几个字符,方便辨认
ctrl+a c    # 再创建一个
ctrl+a p    # 切换到上一个窗口,也就是刚才敲了字符的那个
ctrl+a n    # 切换到下一个窗口
ctrl+a w    # 显示窗口列表
ctrl+a 0-9    # 切换制定的窗口
ctrl+a K    # 关闭当前窗口,并切换到下一窗口(当退出最后一个窗口时,该终端自动终止,并退回到原始shell状态)
exit    # 退出当前窗口,并切换到下一窗口(当退出最后一个窗口时,该终端自动终止,并退回到原始shell状态)

좋은 웹페이지 즐겨찾기