Вы можете пересмотреть свою логику. Вместо подсчета строк здесь кажется более надежным полностью основывать извлечение на шаблонах самих линий. Может быть, этот пригодится:
awk '/^~ [A-Z]/' t.txt |cut -f 4-6 -d " "
Значение :Извлечь только те строки, которые начинаются с " ~" и где третий символ является заглавной буквой. Затем передайте вывод awk через cut, извлекая только поля с 4 по 6 (, начиная отсчет с 1 )и устанавливая разделитель на один пробел.
Если вы правильно настроили правила, вы сможете сделать это без перезапуска этой службы.
Некоторые из этих ресурсов могут быть полезны: