c23 [Linux] 작업제어
본문 바로가기
[Linux]

[Linux] 작업제어

by Jarvis2304 2022. 7. 4.

 

▶ 작업(job): 쉘에서 사용자가 입력한 명령에 의해 수행되는 프로세스들

▶ 포그라운드(Foreground)프로세스 : 명령 프롬프트 앞에서 실행되는 프로세스

- 명령어 옵션 없이 사용시 포그라운드로 실행 ex) sleep 5m

- 쉘에서 명령을 내리면 해당 프로세스가 수행 완료 전까지는 명령 프롬프트($,#)가 나타나지 않아 다른 명령을 수행할 수 없음

- 포그라운드 프로세스는 터미널로부터 입력을 받을 수 있으며, 사용자와 상호작용이 가능

 

 

▶ 백그라운드로(Background)프로세스: 명령 프롬프트 뒤에서 실행되는 프로세스

-명령어 옵션에 사용시 백그라운드로 실행 ex) sleep 5m &

- 쉘에서 내린 명령어가 수행 완료되지 않더라도 또 다른 명령어 수행 가능

- 터미널로부터 입력을 받을 수 없음, 사용자와 상호작용이 불가능

- 주로 긴 시간이 소요되는 프로세스를 백그라운드로 수행

 

sleep 숫자[smhd]: 지정한 시간동안 프로그램의 실행을 중지하는 명령

ex)

$sleep 10

$sleep 3m

 

 

 

▶jobs [-l]: 작업목록 확인 명령

- 일시 중지된 명령어나 백그라운드 프로세스로 실행 중인 목록 출력

 [1], [2] ... : 일시 중지되거나 백그라운드로 수행중인 프로세스의 작업번호

+,- : '+'는 가장 최근 프로세스, '-'는 하나 이전 프로세스

그 이전에 수행된 프로세스는 아무기호 없음

 

2932,3008,..: 프로세스 ID(PID), 시스템 내에서 프로세스를 유일하게 구분해주는 숫자

 

 

 

 

 

포그라운드 실행

fg[%작업번호]: 포그라운드로 수행

- 일시 중지되거나 백그라운드로 수행 중인 프로세스를 포그라운드로 전환

- 명령 인자가 생략되면 가장 최근 프로세스를 포그라운드로 전환

 

 

 

백그라운드 실행1

-> 포그라운드로 실행

-> Ctrl + Z (프로세스 일시중지)

-> bg (백그라운드로 전환)

 

bg[%작업번호] : 백그라운드로 수행

- bg명령에서 작업번호를 생략하면 가장 최근 중지된 프로세스 전환

- 작업 목록은jobs [-l]명령으로 확인

ex)

 

 

백그라운드로 실행2

 - $ 명령어& 사용

 

 

 

포그라운드 프로세스 강제종료: Ctrl + C

 

쉘 프로세스의 종료: Ctrl + D

-실행 중인 포그라운드 프로세스가 없을 경우 쉘이 종료됨

터미널이 닫히거나, 로그아웃을 방지하기 위해서 & set -o ignoreeof 명령사용 ( EOF명령어 무시)

-'Ctrl+D'는 입력끝(EOF)이라는 특별한 문자의 입력

 

 

 

▶ 명령어 연속 수행하기

- 명령어 사이에 ;, &&, || 사용

ex)

& pwd; ls -al

& pwd; sleep 5; ls -al

& pwd && ls -al

& pwd || ls -al

 

 

'[Linux]' 카테고리의 다른 글

[Linux] wc(문자,단어,줄 수 세기)  (0) 2022.08.28
[Linux] sort(정렬)  (0) 2022.08.28
[Linux] cp(파일 복사)  (0) 2022.08.28
[Linux] df,du(파일의 디스크 사용량보기)  (0) 2022.08.28
[Linux] 프로세스 목록  (0) 2022.07.04

댓글