Bash: Как мне сделать так, чтобы подпроцессы сценария завершались, когда сценарий завершается?

Вопрос относится к следующему сценарию:

Скрипт

#!/bin/sh

SRC="/tmp/my-server-logs"

echo "STARTING GREP JOBS..."
for f in `find ${SRC} -name '*log*2011*' | sort --reverse`
do
    (
        OUT=`nice grep -ci -E "${1}" "${f}"`
        if [ "${OUT}" != "0" ]
        then
            printf '%7s : %s\n' "${OUT}" "${f}"
        else
            printf '%7s   %s\n' "(none)" "${f}"
        fi
    ) &
done

echo "WAITING..."
wait

echo "FINISHED!"

Текущее поведение

Нажатие Ctrl + C в консоли завершает выполнение сценария, но не уже запущенных процессов grep .

11
задан Ivivi Vavava 19 October 2011 в 07:00
поделиться