awk help
Ernie Luzar
luzar722 at gmail.com
Sat Apr 15 20:46:08 UTC 2017
>> On April 15, 2017 1:36:01 PM EDT, Ernie Luzar <luzar722 at gmail.com> wrote:
>> Hello list;
>>
>> Can not figure how to process 2 lines as a single line.
>> I have this file.
>>
>> poollist: opts = 0x2
>> Name: test Role: ipf References: 2 Hits: 0
>> Nodes Starting at 0xc9fd4800
>> Address: 1.11.244.65/32
>> Hits 0 Bytes 0 Name Ref 2
>> Address: 1.163.113.139/32
>> Hits 0 Bytes 0 Name Ref 2
>> Address: 1.163.139.214/32
>> Hits 0 Bytes 0 Name Ref 2
>> Address: 1.173.51.202/32
>> Hits 0 Bytes 0 Name Ref 2
>> Address: 1.175.164.129/32
>> Hits 0 Bytes 0 Name Ref 2
>> Address: 99.197.14.34/32
>> Hits 0 Bytes 0 Name Ref 2
>>
>> The Address line and the Hits line makes a pair.
>>
>> For any pair that hits is greater than zero
>> output file with ip address with ; sufix instead of /32 and
>> hit value in fixed position.
>>
>> I can't figure out how to code awk to process the 2 lines as a pair.
>>
>> All ready searched the online awk references and could not find an
>> example. Any pointers would sure help.
>>
>> Thanks
> Jim Trigg wrote:
> /^Address/ { address = $2; got_address = 1; }
> /^ Hits/ { if (got_address) {
> hits = $2;
> if (hits) {
> [Do what's needed with address and hits]
> got_address = 0;
> } else {
> [Handle error condition of hits without
address]
> }
> }
>
> Jim
>
In awk talk what is this called
/^Address/
/^ Hits/
Thanks
More information about the freebsd-questions
mailing list