백그라운드에서 작업이 완료된 후 +/- command 또는 [n]-

백그라운드에서 작업을 실행

$ command &

완료되면 터미널이 인쇄

[n]+    command

또는

[n]-    command

그래서 때로는 플러스이고 다른 경우는 마이너스 [n]입니다.

더하기 / 빼기 무엇을 의미합니까?



답변

그들은 현재 직업과 이전 직업을 구별해야한다. 마지막 작업과 가진 두 개 이상의 작업에 대한 두 번째 마지막 직장, +마지막과 -두 번째 마지막 하나.

보낸 사람 man bash:

이전 작업은을 사용하여 참조 할 수 있습니다 %-. 이 단지 하나의 직업이다, 경우 %+%-모두 해당 작업을 참조 할 수 있습니다. 작업과 관련된 출력 (예 : jobs 명령의 출력)에서 현재 작업은 항상으로 표시되고 +이전 작업은으로 표시
-됩니다.

예:

$ sleep 5 &
[1] 21795

$ sleep 5 &
[2] 21796

$ sleep 5 &
[3] 21797

$ sleep 5 &
[4] 21798

$ jobs
[1]   Running                 sleep 5 &
[2]   Running                 sleep 5 &
[3]-  Running                 sleep 5 &
[4]+  Running                 sleep 5 &

$
[1]   Done                    sleep 5
[2]   Done                    sleep 5
[3]-  Done                    sleep 5
[4]+  Done                    sleep 5


답변

를 통해 작업을 확인할 때 참조하고 있다고 생각합니다 $jobs. 그러나 이미 알고 있듯이 n작업 번호를 나타냅니다. 는 [n] +호출 된 최종 작업을 의미한다.
[n] -호출 된 두 번째에서 마지막 작업을 나타냅니다.

예를 들면 다음과 같습니다.

chris@chris-VirtualBox:~$ sleep 30 &
[1] 904
chris@chris-VirtualBox:~$ sleep 50 &
[2] 972
chris@chris-VirtualBox:~$ jobs
[1]-  Running                 sleep 30 &
[2]+  Running                 sleep 50 &

이 경우, 우리는 이유입니다 sleep 50 &: 마지막 [2]+sleep 30 &마지막에 두 번째 :[1]-


답변