백그라운드에서 작업이 완료된 후 +/-


21

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

$ command &

완료되면 터미널이 인쇄

[n]+    command

또는

[n]-    command

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

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

답변:


19

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

보낸 사람 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

2

를 통해 작업을 확인할 때 참조하고 있다고 생각합니다 $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]-


상황에 대한 설명이 명확하지 않으며 시스템은 어떤 작업이 먼저 종료 될지 예측하지 않습니다.
Julie Pelletier

나는 당신이 무슨 뜻인지
알겠습니다
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.