Как убить все подгруппы, но не убивая ток -процесс оболочкиLinux

Ответить Пред. темаСлед. тема
Anonymous
 Как убить все подгруппы, но не убивая ток -процесс оболочки

Сообщение Anonymous »

Я хочу убить все суб -процессы, начатые в текущей оболочке рекурсивно , но не убивайте сам текущий процесс оболочки.

Код: Выделить всё

#!/bin/bash

echo "Start all child processes in background"

(long_running_process_1.sh &)
(    long_running_process_1.1_started_by_long_running_process_1.sh &)
(    long_running_process_1.2_started_by_long_running_process_1.sh &)
(    long_running_process_1.3_started_by_long_running_process_1.sh &)
(long_running_process_2.sh &)
(    long_running_process_2.1_started_by_long_running_process_2.sh &)
(    long_running_process_2.2_started_by_long_running_process_2.sh &)
(    long_running_process_2.3_started_by_long_running_process_2.sh &)
(long_running_process_3.sh &)
(...)
(long_running_process_n.sh &)

echo "Kill all subprocesses started within this shell"

how_to_kill_all_subprocesses_here "?"

echo "All sub processes have been killed!"
echo "Continue to run other commands"
echo "Hello world"
< /code>
Я попробовал "pkill
"или" «Метод, упомянутый в следующем сообщении, но он убивает саму оболочку, которая не ожидается: https://unix.stackexchange.com/question ... ash-script написал/>>

Код: Выделить всё

pkill -P $$
# or
pstree -A -p $$ | grep -Eow "[0-9]+" | xargs kill
< /code>
Я попытался получить результат, а затем анализировать результат, но я не могу правильно установить результат: < /p>
# This only get a subshell $$ not current shell $$
result="$(pstree -A -p $$ | grep -Eow "[0-9]+")"
< /code>
Как реализовать команду "how_to_kill_all_subprocesses_here
"в сценарии Demo Bash?

Подробнее здесь: https://stackoverflow.com/questions/796 ... ll-process
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как запустить процесс в C# на Linux, где процесс запуска может закончиться, не убивая дочерний процесс?
    Anonymous » » в форуме Linux
    0 Ответы
    119 Просмотры
    Последнее сообщение Anonymous
  • Автоматически скрывать терминал, не убивая запущенный процесс
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Проектирование системы — подгруппы пользователей и администраторов
    Гость » » в форуме JAVA
    0 Ответы
    21 Просмотры
    Последнее сообщение Гость
  • Matplotlib venn3 пустой макет подгруппы
    Anonymous » » в форуме Python
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Matplotlib venn3 пустой макет подгруппы
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Linux»