多种linux文本去重方法

1.awk用法:

awk去重法【1】

# 查看两个文本的第一列,然后排序去重显示出现第一次的
awk '{print $0}' file1 file2 | sort | uniq -u > new_file  

awk去重法【2】

# 单个文件去重方法(去重后不会打乱顺序和排序)
awk '!x[$0]++'  file1 > new_file 

awk去重法【3】

# 查找文件行中唯一行(注:处理文本中只有一列的)
awk '{print $0}' ./filename.txt | sort | uniq -d  > new_filename.txt

2.sort 用法:

sort去重法【1】

 # 查找文件行中值重复的行(用于单个文件)
sort ./filename.txt  | uniq -d  new_filename.txt

sort去重法【2】(用于多个文件一次性去重)

# 使用cat 配合去重(用于多个文件一次性去重)
cat ./*_filename.txt | uniq -d  > new_filename.txt

sort去重法【3】(查找非重复行)

# 查找非重复行
sort filename.txt | uniq -u  > new_filename.txt

sort去重法【4】(统计字符出现次数)

# 统计字符出现次数
sort filename.txt | uniq -c

3.grep 用法

grep去重法【1】

# 对比两个文件去重后生成新文件
grep -vFf file1 file2 > new_filename.txt

grep去重法【2】

# 从b中剔除a中有的 去重
 grep -v -f  file1 file2 > new_filename.txt
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐