백그라운드 작업 출력에서 ​​'+' 및 '-'의 의미

백그라운드 작업 출력에서 ​​'+' 및 '-'의 의미

여러 가지 백그라운드 작업을 실행할 때

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 %2kill 을 할 수 있습니다 command_)

그러나 그 중 하나라도 부족하다는 것은 무엇을 의미합니까 +? -실행 man jobs중이고 jobs -h작동하지 않습니다.

답변1

에서Bash에 대한 정보 매뉴얼, 7.1장 작업 제어 기본에 설명이 있습니다.

작업 번호 n은 '%n'으로 참조될 수 있습니다. '%%' 및 '%+' 기호는 현재 작업에 대한 쉘의 개념을 나타냅니다. 이는 포그라운드에 있거나 백그라운드에서 시작된 동안 중지된 마지막 작업입니다. 단일 '%'(수반되는 작업 사양 없음)도 현재 작업을 나타냅니다. 이전 작업은 '%-'를 사용하여 참조할 수 있습니다. 작업이 하나만 있는 경우 '%+'와 '%-'를 모두 사용하여 해당 작업을 참조할 수 있습니다.

작업과 관련된 출력(예: 명령 출력 jobs)에서 현재 작업은 항상 '+'로 플래그가 지정되고 이전 작업은 '-'로 플래그가 지정됩니다.

관련 정보