linux:删除指定列重复的行


现在有文件file.txt, 如下所示:

header1 header2
chr10_10000018 chr11
chr10_10000018 chr12
chr10_100000625 chr10
chr10_100000645 chr11
chr10_100001867 chr11

可以看到,第一列的chr10_10000018存在重复的值,分别位于第一行和第二行,现在只希望保留第一行,变成如下文件file1.txt所示:

header1 header2
chr10_10000018 chr11
chr10_100000625 chr10
chr10_100000645 chr11
chr10_100001867 chr11

则可以用命令:

tail -n +2 file.txt | sort -k1,1 -V | sort -uk1,1 -V > file1.txt

tail -n +2 指的是header不参与排序;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM