Для веб-приложения, которое я разрабатываю, у меня есть скрипт bash для отслеживания изменений в исходном коде и обновления работающей среды.
function app-serve {
python runserver.py
}
function compile-coffee {
inotifywait -e modity scripts | while read change; do
coffee -o js scripts
done
}
Теперь мне нужно, чтобы эти две функции выполнялись одновременно,
app-serve &
compile-coffee &
И подожди тоже
wait
Проблема в том, что когда я хочу остановить эти процессы, простой Ctrl-C
этого не делает. Когда я делаю Ctrl-C
, я получаю командную строку обратно, но процессы, выполняемые в функциях, все еще живы.
Есть ли способ заставить bash просто подождать, пока я нажму Ctrl-C
, а затем убить все подпроцессы?
Редактировать : В одном разъяснении я вижу процесс python
, который я запускаю в app-serve
функция убита . Только inotifywait
и пара bash
процессов висят.