Решение с GNU awk
:
gawk -v OFS= -v FPAT=',(srcip|srczone|protocol|dstip|dstzone|dstport|rule_name)=[^,]*' -e 'NF > 0 { $1=$1; print }'
Здесь я использую особенность GNU awk
: с переменной FPAT
, I ' m с указанием формата полей с помощью регулярного выражения, так что каждой части строки, соответствующей регулярному выражению, присваивается значение $ 1 ... $ n
. Затем я назначаю $ 1
на $ 1
, чтобы $ 0
был восстановлен с нуля, используя только $ 1 ... $ n
.