답변:
그들은 현재 직업과 이전 직업을 구별해야한다. 마지막 작업과 가진 두 개 이상의 작업에 대한 두 번째 마지막 직장, +
마지막과 -
두 번째 마지막 하나.
보낸 사람 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]-