[Linux] Screen 명령어
Linux 콘솔에서는 기본적으로 하나의 foreground job 을 수행할 수 있는데, 여러 개의 작업을 동시에 실행할 때에는 screen 명령을 이용해서 가상의 콘솔을 이용할 수 있다.
1. 기본 사용법
> screen |
2. 스크린 추가하기
^A^C
3. 스크린 닫기
exit : 현재 스크린 닫기
^D : 현재 스크린 닫기
^A\ : 전체 스크린 종료 및 screen 명령 종료
4. 스크린 전환하기
^A^P : 이전 번호의 스크린으로
^A^N : 다음 번호의 스크린으로
^A0, ^A1, ... ^A9 : 해당 번호의 스크린으로 이동
^A' : 이동할 스크린 번호 입력해서 이동
^A^A : 바로 전에 사용한 스크린으로 이동
5. 현재 스크린 확인
^AN : 현재 스크린 번호 확인
^A^W : 전체 스크린 리스트 확인
[Linux] Job 컨트롤
Linux에서는 여러 개의 프로그램을 동시에 실행시킬 수가 있는데,
하나의 콘솔창에서는 보통 하나의 Job만 foreground에서 실행이 가능하고, 나머지 Job은 Background에서 실행이 된다.
이 포스트에서는 Foreground / Background Job을 관리하는 방법에 대해서 알아본다.
1. Job
현재 콘솔에서 실행되고 있는 Job들의 리스트를 확인하는 명령어
> jobs |
2. 백그라운드에서 프로그램을 실행하는 방법
명령 끝에 '&' 를 붙여준다. 실행 하게 되면 job id와 프로세스 id 를 보여준다. (아래 예제에서는 job id = 1, process id = 910)
> sleep 1000 & [1]+ 910 |
3. 현재 실행중인 명령을 잠시 중단하는 방법
명령어 실행 후 ^Z (ctrl + z) 를 입력한다.
> sleep 1000 & ^Z [1]+ Stopped sleep 1000 |
Stopped 라고 나오지만 실제로는 종료되지 않은 상태로 남아 있다. (jobs 명령어로 확인이 가능)
4. 잠시 중단한 명령을 백그라운드로 보내는 방법
bg %[id]
> bg %1 [1]+ sleep 1000 & |
5. 백그라운드에서 실행중인 job을 foreground로 바꾸는 방법
fg %[id]
> fg %1 sleep 1000 |
6. 실행 중인 명령을 중단하는 방법
명령어 실행 후 ^C (ctrl + c) 를 입력한다.
참고로 백그라운드에서 작업 중인 명령을 종료하기 위해서는 해당 job을 foreground로 넘긴 후 ^C 를 입력하면 된다.
혹은 kill 명령어를 이용해서 해당 process 를 종료 하면 된다. (process id 는 ps 명령어로 검색한다.)
> kill 910 |