【发布时间】:2018-06-21 02:46:28
【问题描述】:
我正在尝试使用awk 打印一条消息,具体取决于使用相同tab-delimeted file 中的数据的不同条件。也就是说,---positive file--- 正在被使用,那么这两个条件都满足并且变量 count 为 2,因此被打印出来。这似乎可行,但是当我尝试为---negative file--- 添加条件时,这两个条件不满足^ unexpected newline or end of string 是错误。我认为语法是正确的,但我遗漏了一些东西。谢谢你:)。
awk
awk -F'\t' '$1=="Control" && $2=="Present" {count++} END{print count " controls detected"} $1=="Control" && $2!="Present" {print "0 controls detected"}' file
文件 --- 否定 ---
Control NoCall
Control NoCall
文件---正文件---
Control Present
Control Present
想要的输出---负文件---
0 controls detected
想要的输出---正文件---
2 controls detected
修正后的输出:
0 controls detected
0 controls detected
【问题讨论】:
-
您输入
file的真实内容是什么? -
来自
.tsv...的大约 40 列。我发布的两列只是以不同的顺序排列,是最重要的两列。谢谢你:)。 -
抱歉,里面有 2800 行 :)。
-
@Chris:您是否意识到在所示示例中您有一个未终止的
"字符? -
@Inian,谢谢你,我什至没有注意到.... 更正后我得到了
0 controls detected... 可能错过了END?谢谢你:)。
标签: awk