linux中去重命令
linux中去重命令详细介绍
在 Linux 里,有不少命令可用于去重操作,下面为你介绍几个常用的命令及其用法。
1.
uniq 命令
uniq 命令用于去除文本文件中相邻的重复行,通常和 sort 命令搭配使用,先对文本排序,再去重。
基本用法
- 去除相邻重复行:
bash
input.txt output.txt
此命令会把 input.txt 文件中相邻的重复行去除,将结果保存到 output.txt 文件。
- 结合
sort命令去除所有重复行:
bash
input.txt output.txt
先对 input.txt 文件的内容排序,再去除重复行,最后把结果保存到 output.txt 文件。
2.
sort -u 命令
sort -u 可直接对文件内容进行排序并去重。
基本用法
bash
input.txt output.txt
该命令会对 input.txt 文件的内容排序并去重,将结果保存到 output.txt 文件。
3.
awk 命令
awk 是功能强大的文本处理工具,也能用来去除重复行。
基本用法
bash
input.txt output.txt
912 input.txt > output.txt
seen 是一个数组,用来记录每行是否已经出现过。若某行未出现过,seen[$0] 为 0,!seen[$0] 为真,执行打印操作,同时 seen[$0] 加 1;若某行已经出现过,!seen[$0] 为假,不执行打印操作。最终把去重后的结果保存到 output.txt 文件。