본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.


리눅스/유닉스 시스템에서, 백그라운드로 실행되고 있는 프로세스를 조회하는 명령어
jobs [옵션] [번호]
  • -l : 프로세스 그룹 ID를 state 필드 앞에 출력
  • -n : 프로세스 그룹 중에 대표 프로세스 ID를 출력
  • -p : 각 프로세스 ID에 대해 한 행씩 출력
  • command : 지정한 명령어를 실행
상태 설명
Running 작업이 일시 중단되지 않았고 종료하지 않고 계속 진행 중임을 뜻한다.
Done 작업이 완료되어 0을 반환하고 종료했음을 뜻한다.
Done (code) 작업이 정상적으로 완료했으며, 0이 아닌 코드를 반환했음을 뜻한다.
Stopped 작업이 일시 중단됨을 뜻한다.
Stopped (SIGTSTP) SIGTSTP 신호가 작업을 일시 중단했음을 뜻한다.
Stopped (SIGSTOP) SIGSTOP 신호가 일시 중단했음을 뜻한다.
Stopped (SIGTTIN) SIGTTIN 신호가 작업을 일시 중단했음을 뜻한다.
Stopped (SIGTTOU) SIGTTOU 신호가 작업을 일시 중단했음을 뜻한다.

백그라운드 실행과 작업 번호

편집 원본 편집
  • 명령 끝에 & 를 붙이면 그 명령을 백그라운드로 실행하고 셸 프롬프트를 바로 돌려준다. 셸은 [1] 2345 처럼 작업 번호와 PID 를 보여 준다
$ tail -f /var/log/messages > ~/syslog &
[1] 2345
$ jobs
[1]+  Running    tail -f /var/log/messages > ~/syslog &
  • 위 명령은 시스템 로그를 실시간으로 읽어(tail -f) 출력을 홈 디렉터리의 syslog 파일로 돌리고(리다이렉션 >) 전체를 백그라운드로 돌린다
  • 포그라운드에서 돌고 있는 작업은 Ctrl+Z 로 멈춘 뒤 bg 로 백그라운드에서, fg 로 포그라운드에서 다시 실행한다
  • Ctrl+Z 로 멈춘 대기(suspend) 상태의 작업은 jobs 에 Stopped 로 나온다. 멈춘 작업을 확인하는 명령이 jobs 다. find·vi 는 파일 찾기·편집 명령이라 프로세스 상태와 관계없다

헷갈리는 기호

편집 원본 편집
기호 뜻
& 명령 끝에 붙여 백그라운드로 실행한다
% 작업 번호를 가리킨다. fg %1, kill %2. %+ 는 현재 작업, %- 는 이전 작업
> 표준 출력을 파일로 보낸다(덮어쓰기). >> 는 이어 쓰기 → 리눅스 리다이렉션
^ ^old^new 로 직전 명령의 old 를 new 로 바꿔 다시 실행한다 → 리눅스 history
  • 명령 끝에 붙인 % 나 @ 는 백그라운드 기호가 아니라 그냥 명령의 인자로 넘어간다