awk - 结合多个awk命令

标签 awk

假设以下输入:

$ 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

关于awk - 结合多个awk命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12167250/

相关文章:

linux - Bash Awk 划分得到不同的结果

linux - 如何使用 awk 获取所有 A 列与 B 列对的分数的最大值和平均值?

shell - 使用 AWK 验证 if 循环条件中的日期格式

Linux:复制最近的目录(名称有空格)

bash - 选择由某些字符分隔的完整文本 block

linux - 使用 bash 脚本批量重命名 FTP 服务器上的文件

python - 命令 "python --verson"使用 "awk"提取版本号

bash - 如何在 awk 脚本中使用 shell 变量?

shell - 将参数作为数组从 shell 传递到 awk

linux - 删除多行中的重复字符串