+/- після того, як буде виконано завдання у фоновому режимі


21

Виконайте роботу на задньому плані

$ command &

Коли це зроблено, термінал друкує

[n]+    command

або

[n]-    command

Тому іноді це плюс, а інший раз - це мінус [n].

Що означає плюс / мінус?

Відповіді:


19

Вони мають розрізняти поточну та попередню роботу; остання робота і друга остання робота для більш ніж двох робіт, з +останньою і -для другої останньої.

Від man bash:

На попереднє завдання можна посилатися за допомогою %-. Якщо є лише одна робота, %+і %-їх можна використовувати як для позначення цієї роботи. У висновку, що стосується завдань (наприклад, вихід команди команд), поточне завдання завжди позначено символом a +, а попереднє завдання - a -.

Приклад:

$ 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]-


Ваш опис ситуації незрозумілий, і система не передбачає, яка робота закінчиться першою.
Джулі Пелтьє

Я бачу, що ви маєте на увазі, наголошу на головному
Кламз
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.