Поставить
trap ":" SIGINT
перед циклом. Это заставляет оболочку игнорировать сигнал. Но только в том смысле, что он выполняет фиктивную команду, а не «игнорирует» в смысле обработчика сигнала.
Поскольку процесс оболочки не блокирует этот сигнал (с точки зрения ядра ), он передается своим дочерним процессам (, например tail
в этом примере ).