The following is my test.log file
a 1020 491 513 1 0 0 52
a 1000 491 513 1 0 0 53
sa 4011 491 513 1 0 0 0
sa 4010 491 513 1 0 0 1
d 1000 508 0 0 0 0 53
d 1020 508 0 0 0 0 52
a 1000 508 513 1 0 0 54
a 1020 508 513 1 0 0 55
sa 4011 508 1026 2 0 0 2
sa 4010 508 1026 2 0 0 3
sd 4010 508 513 1 0 0 1 QIO1
sa 4021 508 513 1 0 0 1
d 1000 525 0 0 0 0 54
d 1020 525 0 0 0 0 55
sd 4021 525 0 0 0 0 1 QIO2
a 1000 525 513 1 0 0 57
a 1020 525 513 1 0 0 56
sa 4010 525 1026 2 0 0 5
sa 4011 525 1539 3 0 0 4
sd 4011 525 1026 2 0 0 0 QIO1
sa 4021 525 513 1 0 0 0
d 1000 542 0 0 0 0 57
sd 4021 542 0 0 0 0 0 QIO2
d 1020 542 0 0 0 0 56
I want to extract only lines that have (first column = sa or sd) and second columns equal to 4010 and 4011. I tried the following command.
cat test.log | grep "sa\|sd" | awk '{if ($2 = "4010"|| $2 ="4011")print}'
But it gives me wrong output.
My expected output is
sa 4011 491 513 1 0 0 0
sa 4010 491 513 1 0 0 1
sa 4011 508 1026 2 0 0 2
sa 4010 508 1026 2 0 0 3
sd 4010 508 513 1 0 0 1 QIO1
sa 4010 525 1026 2 0 0 5
sa 4011 525 1539 3 0 0 4
sd 4011 525 1026 2 0 0 0 QIO1
Can someone suggest where I am going wrong. Thanks