uniq主要用来处理文本中出现的重复行或列(列还未做测试)

其用法为 uniq [option] file

常见参数含义如下

    - c 显示输出中,在每行行首加上本行在文件中出现的次数。它可取代- u和- d选项。

  - d 只显示重复行
  - u 只显示文件中不重复的各行
  - n 前n个字段与每个字段前的空白一起被忽略。一个字段是一个非空格、非制表符的字符串,彼此由制表符和空格隔开(字段从0开始编号)。
  +n 前n个字符被忽略,之前的字符被跳过(字符从0开始编号)。
  - f n 与- n相同,这里n是字段数。
  - s n 与+n相同,这里n是字符数。

test文件内容为

boy took bat home boy took bat home girl took bat home dog brought hat home dog brought hat home dog brought hat home

1.uniq与uniq -u 区别

root@extmail temp$uniq -u testgirl took bat home
root@extmail temp$uniq test   boy took bat home girl took bat home dog brought hat home

 

可以看出,-u选项显示文件中没有连续出现的行。(不重复的行)

而uniq则表示删除重复的行

2.输出重复的行

root@extmail temp$uniq -d testboy took bat home dog brought hat home

3.-f -s选项用法

root@extmail temp$uniq -f 1 -s2 testboy t3ook bat home boy t4ook bat home girl took bat home dog brought hat home root@extmail temp$uniq -f 1 -s3 testboy t3ook bat home girl took bat home dog brought hat home

-f 1 -s3表示忽略第一个字段,忽略第一个字段后的空白字符和第二个字段的前两个字符,然后比较剩下的内容。