Linux 中的 uniq 命令和示例
linux uniq命令基本上用于删除文件中的所有重复行。当一行重复多次并将这些多行替换为一行时使用此命令。此命令旨在处理已排序的文件。
目的:从排序的“输入文件”中删除重复行并将唯一行发送到“输出文件”。如果未指定 'output-file',则命令的输出将发送到标准输出。如果未指定“输入文件”,则该命令从标准输出获取输入。
句法 :
$ uniq [option] [input-file] [output-file]
选项 :
-c :在每个输出行之前出现它出现的次数。
-d :显示重复的行。
-u :显示不重复的行。
例子 :
创建示例输入文件。
$ cat sample
输入 :
这是 uniq 命令的测试文件。
它包含一些重复的行。
它包含一些重复的行。
而有些则不同。
它包含一些重复的行。
它包含一些重复的行。
1. 文件未排序时删除重复行。
$ uniq sample
输出 :
这是 uniq 命令的测试文件。
它包含一些重复的行。
而有些则不同。
它包含一些重复的行。
2. 排序后删除重复文件。
$ sort sample -> sample1
$ uniq sample1
输出 :
而有些则不同。
它包含一些重复的行。
这是 uniq 命令的测试文件。
3. 找出这些行重复的次数。
$ uniq -c sample1
输出 :
1 And some are different.
4 It contains some repeated lines.
1 This is a test file for the uniq command.
4. 查找重复行。
$ uniq -d sample1
输出 :
It contains some repeated lines.
5. 查找唯一的行并存储在另一个文件中。
$ uniq -u sample1 out
$ cat out
输出 :
And some are different.
This is a test file for the uniq command.