Сценарий Bash не завершается сразу после вызова `exit`

У меня есть следующий сценарий bash:

tail -F -n0 /private/var/log/system.log | while read line 
do
    if [ ! `echo $line | grep -c 'launchd'` -eq 0 ]; then
        echo 'launchd message'
        exit 0
    fi
done

По какой-то причине он выводит сообщение launchd , ожидает полных 5 секунд, а затем затем завершает работу.

Почему это происходит и как мне заставить его выйти сразу после того, как он отобразит сообщение launchd ?

6
задан Chetan 28 October 2010 в 22:22
поделиться