Прежде всего я хотел бы сказать, что я тщательно искал решение моей проблемы в вебе/StackOverflow ..Фоновая функции в сценарии оболочки не убивает
Я имеющий следующий сценарий сценария оболочки :
#!/bin/bash
{
while :
do
echo "running"
sleep 2
done
}&
procid=$!
echo $procid
trap "kill -15 $procid" 2 15
Даже после прерывания процесса с помощью Ctrl-C, фоновый процесс по-прежнему печати «работает» в командной строке. Я должен убить фоновый процесс с терминала с помощью «kill -9 PID», где PID - это идентификатор процесса фонового процесса. Я пробовал без & (не работает в фоновом режиме), и скрипт заканчивается с помощью Ctrl-C.
Решение этих проблем предлагается в этих ссылках, однако оно не работает по желанию (фоновый процесс не убивается). я говорил по этим ссылкам:
How do I kill background processes/jobs when my shell script exits?
я сомневаюсь, что вы можете прервать посланной сценарий, так как он работает до завершения без ожидания, поэтому кажется, что этот скрипт делает n ot представляют ваш реальный сценарий. – Armali