
여러 가지 백그라운드 작업을 실행할 때
for s in {1,2,3}; do command_$s &; done;
jobs
명령 으로 모두 볼 수 있습니다
$ jobs
[2] running command_1
[3] - running command_2
[4] + running command_3
첫 번째 열이 ID라는 것을 알고 있습니다. (예를 들어 kill -9 %2
kill 을 할 수 있습니다 command_
)
그러나 그 중 하나라도 부족하다는 것은 무엇을 의미합니까 +
? -
실행 man jobs
중이고 jobs -h
작동하지 않습니다.
답변1
에서Bash에 대한 정보 매뉴얼, 7.1장 작업 제어 기본에 설명이 있습니다.
작업 번호 n은 '%n'으로 참조될 수 있습니다. '%%' 및 '%+' 기호는 현재 작업에 대한 쉘의 개념을 나타냅니다. 이는 포그라운드에 있거나 백그라운드에서 시작된 동안 중지된 마지막 작업입니다. 단일 '%'(수반되는 작업 사양 없음)도 현재 작업을 나타냅니다. 이전 작업은 '%-'를 사용하여 참조할 수 있습니다. 작업이 하나만 있는 경우 '%+'와 '%-'를 모두 사용하여 해당 작업을 참조할 수 있습니다.
작업과 관련된 출력(예: 명령 출력
jobs
)에서 현재 작업은 항상 '+'로 플래그가 지정되고 이전 작업은 '-'로 플래그가 지정됩니다.