Linux - 将包含字符串的行放在新文件的特定列中

时间:2016-11-04 15:01:37

标签: linux awk

我想从linux中的文本文件中提取所有行,其中包含特定列(第4列)中的特定数字(在本例中为9913)。这是一个制表符分隔的文件,因此我将其称为列,但我不确定它是什么。

在某些情况下,第4列中只有一个数字,但在其他行中,此列中有多个数字(例如,9913; 4444; 5555)。我想获得第99列出现的第99列中的任何行(无论是否是唯一的数字或列表中的行)。如何将第4列中包含数字9913的所有行放入自己的文件中?

这是我尝试过的一个例子:

cat file.txt | grep 9913> newFile.txt

结果是以下的混合物:

CDR1as CDR1as ENST00000003100.8 9913 AAA-GGCAGCAAGGGACUAAAA(我想要的文件)

CDR1as CDR1as ENST00000399139.1 9606 GUCCCCA ................(文件例如:我不想要)

调用特定列时,我没有得到任何结果。下面的帮助器显示,代码无法识别我认为的列,并且在使用awk时我得到空白文件。

awk'$ 4 ==“9913”'file.txt> newfile.txt

不会将数据传输到新文件。

由于

1 个答案:

答案 0 :(得分:0)

这是一种做法

awk '$4 == "9913" {print $0}' file.txt > newfile.txt

或只是

awk '$4 == "9913"' file.txt > newfile.txt