Объясните, почему не работает «работа», а работает «пс»?


9

jobsмоя любимая команда, чтобы увидеть мои коды, которые работают в фоновом режиме. Чтобы динамически проверять их, я стараюсь набрать

watch 'jobs'

который ничего не отображает. Однако

watch 'ps'

работает отлично. Я делал ту же ошибку в течение нескольких месяцев.

Я думаю, понимание того, почему первое не работает, а второе работает, может помочь мне прекратить делать ту же ошибку.

Кто-нибудь может помочь?



1
Более полезным вопросом будет « как мне заставить его работать?» Однако почему (в данном случае) интереснее.
ctrl-alt-delor

Ответы:


20

jobsэто встроенный модуль, который сообщает о состоянии текущей оболочки: команды, которые были заданы в этой оболочке. watchзапускает новую оболочку для каждого выполнения, и эта оболочка jobsне может узнать, каковы задачи watchродительской оболочки. psявляется внешней командой, и она никогда не использовала состояние оболочки.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.