+ -
当前位置:首页 → 问答吧 → [求助]我想将一个txt文件中第一列相同的行只保留一行

[求助]我想将一个txt文件中第一列相同的行只保留一行

时间:2011-03-16

来源:互联网

rt,我是新手
就是就是第一列相同的所有行只保留任意一行,怎么实现,求解答

作者: myideis   发布时间: 2011-03-16

sort test |awk 'BEGIN{last_line=""} {if ($1 != last_line) { print $0; last_line=$1} else {next}}'

作者: linenoise77   发布时间: 2011-03-16

回复 myideis


   cat a.txt|sort -c|uniq

作者: db2-zhang   发布时间: 2011-03-16

写错了改下:sort -u

作者: db2-zhang   发布时间: 2011-03-16

uniq ?

作者: expert1   发布时间: 2011-03-16

回复 db2-zhang


    我试了一下,发现你的这条命令不行。

作者: myideis   发布时间: 2011-03-16

回复 linenoise77


    我用sort -n -k1 -u tag_electron.txt > tag.txt得到的结果和你的是一样的,那我的这个也是对的吧

作者: myideis   发布时间: 2011-03-16

本帖最后由 南极雨 于 2011-03-16 16:51 编辑

sort -k1 -u file

作者: 南极雨   发布时间: 2011-03-16

回复 南极雨


    我试过这个,发现行数没有变化,然后加了一个 -n 行数就变少了,我想应该这才对了吧

作者: myideis   发布时间: 2011-03-16

回复 myideis


sort 这个命令比较别扭,分环境的,我的环境中,以带有数字的排序才会用到-n,所以在这里没用-n
有的shell -n 是需要分列数用到的.
自己检查一下,看看用哪个合适.

作者: 南极雨   发布时间: 2011-03-16

回复 南极雨


    恩,我这里都是数字,应该要 -n 吧,我不懂,就在网上到处找。
   多谢了

作者: myideis   发布时间: 2011-03-16

回复 myideis


  awk '!a[$1]++' file

作者: ywlscpl   发布时间: 2011-03-16

热门下载

更多