Зачем же убивать хорошие процессы?...
#! /bin/sh
TIMEOUT=60
while true; do
[ -f /var/lib/checker/hosts.list ] && mv -f /var/lib/checker/hosts.list /var/lib/checker/hosts.check
cat /var/lib/checker/hosts.check | while read host; do
...
done
sleep $TIMEOUT
done
При необходимости сменить пластинку - новый список хостов загоняется в /var/lib/checker/hosts.list
А "sleep $TIMEOUT" я бы переработал на ожидание определённого момента времени, чтобы интервалы между проверками не зависели от их количества.