먼저하는 요약
Ctrl + z : 현재 실행중인 프로세스 백그라운드로 전환
jobs : 백그라운드 프로세스 확인
fg : 백그라운드 프로세스 포그라운드로 전환
fg %[숫자] : 해당하는 숫자의 백그라운드 프로세스 포그라운드로 전환
kill %[숫자] : 해당하는 숫자의 백그라운드 프로세스 정상적으로 종료
kill -9 %[숫자] : 해당하는 숫자의 백그라운드 프로세스 강제로 종료
실행할때부터 백그라운드로 실행하고 싶으면 명령어 끝에 &
GUI 환경에서처럼 CLI 환경에서도 실행하던 프로그램을 백그라운드로 보내 놓는것이 가능하다.
백그라운드로 보내는게 뭐냐면 GUI에서 예를 들면
현재 내가 사용중인 프로세스를 포그라운드(foreground) - 사진에서는 fileB
실행은 되고 있지만 포커스 되지 않은 프로세스를 백그라운드(background) - 사진에서는 fileA
라고 한다.
이번엔 CLI 에서 예를 들어보자.
nano 를 실행 중이다가 이 실행중인 nano를 백그라운드로 잠시 보내려면
Ctrl + z
를 누르면 된다.
백그라운드 프로세스를 확인 할때는
jobs
그리고 백그라운드 프로세스를 포그라운드로 전환할때는
fg
foreground의 준말.
여러개의 백그라운드 프로세스를 만들수도 있다.
백그라운드를 포그라운드로 전환할때는 가장 최근에 실행 했던것부터 차례대로 전환된다.
그림에서는 [1] 빈문서, [2]result.txt, [3]helloWorld.txt 의 순서로 nano를 실행후 백그라운드로 전환했다.
그럼 반대로 백그라운드 프로세스를 포그라운드 프로세스로 전환할때는
[3] helloWorld.txt , [2] result.txt , [1] result.txt 의 순서로 전환된다.
숫자 옆의 공백, -, + 는 이번에 fg 를 입력했을때 어떤 프로세스가 포그라운드로 전환되는지 순서를 보여준다.
+가 가장먼저 실행, -가 그 다음, 공백이 가장 마지막에 실행 되며 이 이후로는 백그라운드 프로세스를 늘리면 다 공백으로 표시 된다.
만약 이 순서가 아니라 먼저 포그라운드로 전환하고 싶은 백그라운드 프로세스가 있으면
fg %[백그라운드프로세스 해당 숫자]
라고 명령한다.
위 예에서 만약 newHtml.html 파일이 아닌 helloWorld.txt 프로세스를 포그라운드로 전환하고 싶다면
fg %3
정상적으로 백그라운드 프로세스를 종료하고 싶다면
kill %[숫자]
라고 명령을 내리면 되는데
이거는 사실 정상적으로 백그라운드 프로세스를 종료시키는 명령이고
강제로 백그라운드 프로세스를 종료 시키려면
kill -9 %[숫자]
라고 명령을 내린다.
참고로 어떤 프로세스를 실행할때 백그라운드에서 돌아가도록 실행할수 있는데 명령어 끝에 & 를 붙이면 된다.
'linux' 카테고리의 다른 글
Daemon introduction - 데몬 개요 (0) | 2022.03.17 |
---|---|
Linux - Ubuntu 디렉토리 구조 (0) | 2022.03.16 |
파이프라인 , IO Redirection (0) | 2022.03.15 |
apt-get 명령어 정리 (0) | 2022.03.14 |
linux 기본 명령어 정리 (0) | 2022.03.11 |
댓글