我试图输出输入文件中唯一文本的计数.它在,$2
但我似乎只能使用下面的计数1.谢谢 :).
awk '{sub(/:.*/,"",$2)} !seen[$5]++{unq++} END{print unq}' input.txt > output.txt
Run Code Online (Sandbox Code Playgroud)
input.txt中
chrX:48544112-48544235 **WAS**:exon.1;WAS:exon.4;WAS:exon.6 271.171
chr5:1282528-1282754 **TERT**:exon.1;TERT:exon.3 349.08
chrX:48547038-48547465 **WAS**:exon.1;WAS:exon.10;WAS:exon.2 42.459
Run Code Online (Sandbox Code Playgroud)
期望的输出
2
Run Code Online (Sandbox Code Playgroud)
如果将字段分隔符重新定义为"冒号或空格",则会更加简单
awk -F '[: ]' '!seen[$3]++ {n++} END {print n}' file
Run Code Online (Sandbox Code Playgroud)