Linux命令如何从一个文件中删除两个文件的相同行

合并两个文件

cat file1.txt file2.txt > unionall.txt

合并两个文件,重复的行只保留一行

cat file1.txt file2.txt | sort | uniq > uniq.txt

获取两个文件相同的行

cat file1.txt file2.txt | sort | uniq -d > duplicate.txt

获取两个文件互不相同的行

cat file1.txt file2.txt | sort | uniq -u > delete_dup.txt

删除file1中存在于file2中的行

cat file1.txt duplicate.txt | sort | uniq -u > file1_not_in_file2.txt

删除file2中存在于file1中的行

cat file2.txt duplicate.txt | sort | uniq -u > file2_not_in_file1.txt

是否有更好的方法?


---转载本站文章请注明作者和出处 二进制之路(binarylife.icu),请勿用于任何商业用途---

留下评论