Я пытаюсь прочитать журнал статуса openvpn, чтобы подключиться к пользователям. Я пробовал следовать ответу здесь , но не повезло.
Вот мой файл:
OpenVPN CLIENT LIST
Updated,Mon Jul 13 10:53:46 2020
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
user123,8.9.10.11:24142,143404433,5616022,Mon Jul 13 10:09:31 2020
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
192.168.1.2,user123,8.9.10.11:24142,Mon Jul 13 10:53:45 2020
GLOBAL STATS
Max bcast/mcast queue length,1
END
Мне нужны строки между «Common» и «ROUTING» , например:
user123,8.9.10.11:24142,143455713,5682214,Mon Jul 13 10:09:31 2020
Используя это:
awk '/Common/{flag=1;next}/ROUTING/{flag=0}flag' /pathtomylog/openvpn-status.log
Я получаю:
user123,8.9.10.11:24142,143455713,5682214,Mon Jul 13 10:09:31 2020
192.168.1.2,user123,8.9.10.11:24142,Mon Jul 13 11:00:36 2020
GLOBAL STATS
Max bcast/mcast queue length,1
END
Любая помощь приветствуется.
Изменить: следующее код работал отлично. Проблема заключалась во втором экземпляре Common
.
sudo awk '/ROUTING/{flag=""} /^Common/{flag=1;next} flag' Input file