如何合并并保留这两个文件的所有信息?
$ cat file1.txt
apple
cool
dude
flan
$cat file2.txt
apple
ball
cool
dude
elephant
得到这样的结果:
$cat result.txt
apple
ball
cool
dude
flan
elephant
基本上,它会从两个文件中获取除重复项之外的所有条目。谢谢
答案1
合并并保留两个文件的所有信息
使用以下命令:
diff -DNAME file1.txt file2.txt | awk '!/NAME/' > result.txt
您必须确保该字符串NAME
不会出现在任何一个文件中(否则请使用其他未出现的字符串)。
例子:
$ cat file1.txt
apple
cool
dude
flan
$ cat file2.txt
apple
ball
cool
dude
elephant
$ diff -DNAME file1.txt file2.txt | awk '!/NAME/' > result.txt
$ cat result.txt
apple
ball
cool
dude
flan
elephant
请注意,各行的顺序与您的要求相同。
进一步阅读
答案2
我能想到的最简单的解决方案:
sort -u file1.txt file2.txt > result.txt
答案3
diff --old-line-format='%L' --new-line-format='%L' file1.txt file2.txt