리눅스 jobs
IT위키
더 많은 작업
- 리눅스/유닉스 시스템에서, 백그라운드로 실행되고 있는 프로세스를 조회하는 명령어
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
|
- 명령 끝에 붙인 % 나 @ 는 백그라운드 기호가 아니라 그냥 명령의 인자로 넘어간다