Filter duplicates in file by using columns as parameters (grep linux) -


i looking pattern #type in set of files. output should return lines containing pattern. lines organized columns tab separator:

<subject1> <#type> <object1> <subject2> <#type> <object1> <subject3> <#type> <object2> <subject4> <#type> <object2> <subject5> <#type> <object3> 

for purpose using command ack-grep:

$ack-grep "#type" 

i can use sed as:

sed -n -e "/#type/p;q" *.nt

the problem duplicates should avoid objects. output should having:

 <subject1> <#type> <object1>  <subject3> <#type> <object2>  <subject5> <#type> <object3> 

why don't use old grep? should basically:

grep '#type' *.nt 

to avoid duplicates in objectn part can use uniq --skip-fields option:

grep '#type' *.nt | sort -k3,3 | uniq --skip-fields 2 

however, output needs sorted before using uniq.


Comments

Popular posts from this blog

javascript - Karma not able to start PhantomJS on Windows - Error: spawn UNKNOWN -

c# - Display ASPX Popup control in RowDeleteing Event (ASPX Gridview) -

Nuget pack csproj using nuspec -