Я хочу ограничить вывод grep каждые 10 секунд.  В частности, я хочу сделать что-то вроде этого:
ping 8.8.8.8 | grep "No route to host" | throttle 3s | xargs -I % sh -c 'reset wifi'
Я хочу ограничить вывод grep каждые 10 секунд.  В частности, я хочу сделать что-то вроде этого:
ping 8.8.8.8 | grep "No route to host" | throttle 3s | xargs -I % sh -c 'reset wifi'
Отвечая на мой собственный вопрос, основанный на этом вопросе, но немного измененный для OSX:
epoch () { date -v+$* "+%s" }
interval () {
    INTERVAL="$*"
    WHEN_TO_RUN=0
    while read LINE; do
        if (( $(epoch 0S) >= $WHEN_TO_RUN )) then
            echo $LINE
            WHEN_TO_RUN="$(epoch $INTERVAL)"
        fi
    done
}
что позволяет ... | interval 3S