去除某个Field有重复的行
例如:$cat filename
robot 3 xxx 10 @@
amyru 4 xxx 30 (&
cindy 3 zzz 50 %%
blue 9 yyy 30 ##
如果按域来取出唯一性的行,应该用什么
结果比如是这样,按第三个域来取就是
amyru 4 xxx 30 (&
cindy 3 zzz 50 %%
blue 9 yyy 30 ##
按第四个域来取就是
robot 3 xxx 10 @@
amyru 4 xxx 30 (&
cindy 3 zzz 50 %%
答案:
1.sort -k3,3 txt6|awk '}'
2.uniq -f2 -W1 file
注。linux的uniq工具没有W。uniq -f是跳过多少个域进行比较,-s是跳过多少个字符,-W是最多对多少个域进行比较,-w是最多对多少个字符进行比较
3.sort -u +2 -3 就是第2个域以后 第3个域结尾的域