假设以下输入:
$cat example {many lines of text} Col1 Col2 Col3 foo bar 2 bar baz 3 baz bar 8 bar foo 0 foo baz 9 baz bar 3 {many more lines of text}
以下两个awk片段解析了我之后的数据:
cat example | awk -v 'RS=\n\n' '/^Col1 /' | awk '$2 == "bar" && $3 > 1 {print $1}' foo baz baz
如何将两个片段组合成一个awk,例如
awk ' ... ... ... ' example
解决方法
你可以做:
awk '/^Col1 /,/^$/{ if( $2 == "bar" && $3 > 1 ) print $1}' example