Получение PID фонового процесса, который запускается через источник

Поэтому у меня есть небольшой скрипт, который я запускаю как источник (для тех, кого это интересует, я делаю это так, чтобы я мог получить правильное значение $ SECONDS человека, выполняющего сценарий), а также помещать программу в фоновом режиме. Внутри этого скрипта существует бесконечный цикл, который выполняется для обновления временного файла каждую секунду.

Итак, мой вопрос, как я могу получить PID цикла внутри скрипта, который должен быть завершен, чтобы убить обновление временного файла / сценария?

  • Bash: запустить команду2, если команда1 не выполнена
  • grep для извлечения подстрок в строке
  • chmod не работает на Mac
  • Пользовательский скрипт shutdown в rc6.d, похоже, не работает.
  • bash читает новую строку, printf сообщает символ 0
  • Что-то не так с пространством в zenity, пытающимся создать скрипт
  • Пространства для переменных в сценарии bash
  • Считать количество вхождений регулярного выражения в круглых скобках
  • 2 Solutions collect form web for “Получение PID фонового процесса, который запускается через источник”

    1. Если вы его используете, это не отдельный сценарий. Это похоже на то, что у вас есть все те строки, которые вы источник, присутствующие в месте / сценарии, из которого вы источник или вызываете его.

    2. Цикл не имеет PID. Если он находится на переднем плане, он работает под текущим PID. Но если вы отправите его на задний план, тогда задание получит собственный PID, который вы можете достичь следующим образом:

      do-something-in-a-loop & pid=$!

    3. Вы также можете использовать спецификацию задания, если знаете. Если у вас есть только 1 задание, вы можете kill %1 .

    Короткий ответ заключается в том, что цикл не имеет собственного ПИД-кода, поскольку он не запускается в отдельном процессе, т. Е. ПИД цикла представляет собой ПИД-код скрипта.

    Для получения более полезного ответа отправьте фактический код.

    Interesting Posts

    Новое ядро ​​автоматически не подключается к сети

    Электронная почта с использованием сценария оболочки с использованием адреса электронной почты из внешнего плоского файла

    Ping хост, проверьте, жив ли он или нет, и отправьте результат в файл через скрипт оболочки

    printf в сценарии оболочки can not do \ x% x

    Сетевые проблемы после обновления Ubuntu

    Почему я получаю ошибку «/ bin / bash не могу найти команду» для псевдонима?

    Разница между .changes и .dsc-файлами при ручном обновлении пакета?

    Fujitsu Life книга Debian Weezy 64-bit

    Как отключить предупреждение «Program» / bin / bash «crashed» при убийстве оболочки?

    Bind MetaL в icewm

    Как исправить «деаутентификацию по местному выбору»?

    Что означает `clean, x / y` в выводе fsck?

    XFS vs Ext4 vs Others – какая файловая система стабильна и надежна для длительного запуска, например, 24/7 case

    В SciTe (Scintilla), как я могу создать синтаксис-выделение для моего собственного пользовательского языка?

    Когда мы используем команду mv, какие изменения происходят на HDD?

    Linux и Unix - лучшая ОС в мире.