Linux/프로그램 관리하기

[Linux 프로그램 관리] 2. $ fg와 $ bg 이용하여 포그라운드로 실행 및 정지 프로그램을 백그라운드로 재개하기

Fletcher 2024. 8. 13. 11:59

 

반갑습니다!

 

저번 포스트에서 여러 내용을 다루면서

자연스럽게 프로세스작업에 대해서 이야기했는데요

 

프로세스실행 중인 프로그램을 관리하는 단위입니다 ^^

 

프로세스와 작업 이 둘은 모두 실행 중인 프로그램의 실체를 가리키지만,

디테일한 차이점이 있습니다

 

프로세스OS(리눅스) 자체가 관리하는 프로그램 실행 단위이고,

작업은 bash를 비롯한 셸(Shell)이 관리하는 프로그램 실행 단위라는 점입니다 ^^

 

따라서 프로세스 ID는 모든 셸에서 참조할 수 있으나,

작업 번호는 명령어를 입력한 셸에서만 참조 가능합니다 !

 

 

하지만 일반적으로 명령어를 입력해서 프로그램을 실행하면

하나의 프로세스로 실행되므로 프로세스와 작업은 대개 일치합니다 ^^

이 때 각각에 할당된 번호인 프로세스 ID와 작업 번호만 서로 다를 뿐입니다!

양쪽이 실제로 달라지는 경우는 |(파이프)를 사용해서

여러 프로그램을 조합해 실행할 때입니다

 

 

 

 

이번 시간에는 간단한 내용입니다

저번 포스트에서 지나가듯이 살짝 살펴본

$ fg 명령어를 사용해 포그라운드로 실행하기

$ bg 명령어를 사용해 백그라운드로 실행하기에 대한 부분입니다 ^^

 

현재 중지 상태인 작업이 하나라면 그냥 명령어만 입력하시면 되고,

중지 상태인 작업이 여러개라면 fg 또는 bg 명령어 뒤에

인자로 해당 작업 번호를 입력해주시면 되겠습니다 ^^

 

포그라운드 실행은 현재 중지 중인 상태인 작업 뿐 아니라

백그라운드 실행 중인 작업을 포그라운드로 전환할 때에도 사용합니다 !

 

 

$ more 명령어로 해당 텍스트 파일을 조회할 때 &를 붙여서 백그라운드로 실행했습니다 ^^

그리고 $ fg 명령어를 이용하여 작업 번호인 1을 인자로 넘겨주어

포그라운드로 전환하여 실행한 예시 이미지입니다 !

 

 

 

이번에는 $ more 명령어를 이용하여 test3.txt 파일을 조회하는 중에

Ctrl+Z를 입력해서 해당 작업을 일시중지한 모습입니다

그리고 다시 $ fg 명령어를 사용하여 포그라운드로 실행을 재개하였습니다 ^^

 

$ bg 명령어를 이용한 백그라운드 실행도 마찬가지입니다 ^^

명령어 뒤에 특정 인자를 입력해주시면 되겠습니다!