2016-11-09 26 views
0

我在file.csv数据:猫使用grep数据

(...) 
0000046;0000046;04688;29;1;52.1683;20.5567 
0000046;0000046;04688;2A;1;52.1818;20.5639 
0000046;0000046;04688;3;1;52.1785;20.5629 
0000046;0000046;04688;4;1;52.1815;20.5638 
0000046;0000046;04688;5;;52.1779;20.5635 
0000046;0000046;04688;6;1;52.1813;20.5636 
0000046;0000046;04688;7;;52.1777;20.5634 
0000046;0000046;04688;8;;52.1810;20.5635 
0000046;0000046;04688;9;1;52.1775;20.5631 
0000046;0000046;05027;2;;52.1908;20.5660 
0000046;0000046;05027;4;1;52.1907;20.5649 
0000046;0000046;05527;1;1;52.1824;20.5636 
(...) 

我需要其中第三字段的给定值相匹配,以提取线。我试图

cat file.csv |grep 05027 

不幸的是,这个匹配包含05027任何地方的任何行。我如何限制只匹配第三个字段?

+0

为样本输入所示,您尝试了命令应该有工作......你可以复制粘贴你得到的输出? – Sundeep

回答

5

首先,你不需要cat grep的,你可以grep pattern file

AWK是好办了基于列的数据输入。

什么你可以尝试是:

awk -F';' '$3=="05027"' file 
+1

Thx,工作正常! – masterzst

+0

你可以提出答案并接受它。 –

+0

@ A.M.D:OP尚未获得[特权升级](https://stackoverflow.com/help/privileges/vote-up)。 – user000001