![](/img/trans.png)
[英]Use AWK to print lines that have a certain string followed by a number greater than 10000
[英]Print out lines have value great than 1 with awk
我試圖從一行中的任何值大於1的文件中提取數據。你們知道有什么簡單的方法嗎?
awk -F"\t" '{if(($3>1)||($4>1)||($5>1)||($6>1)||($7>1)||($8>1)||($9>1)||($10>1)||($11>1)||($12>1)||($13>1)||($14>1)||($15>1)||($16>1)||($17>1)||($18>1))print$0}' file1.txt > file2.txt
您可以在awk中使用for
循環,而不用編寫那么多的條件:
awk -F"\t" '{for(i=3; i<=18; i++){if($i>1){print $0; next;}}}' filename
如果希望與第3
列到最后一列對應,請在循環條件中使用NF
而不是18
。
awk -F'\t' '{f=0; for (i=3;i<=18;i++) if ($i>1) f=1} f' file1.txt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.