我熟悉tkDiff和WinMerge等工具,并且知道如何查看两个文件之间的区别。
我要做的是在一个文件中生成一个不存在于另一个文件中的元素报告。
例如:
File1包含:
apple
cool
dude
flan
File2包含:
apple
ball
cool
dude
elephant
我想制作一份包含以下内容的报告:
ball
elephant
或者,更好的是,这样的报告:
+ball
+elephant
-flan
有人知道可以做到这一点的工具吗?最好使用命令行选项。
WinMerge中的报告功能与我想要的并不太远,但是没有命令行选项(据我所知)。
提前致谢。
答案 0 :(得分:43)
这可能适合你(GNU diff):
diff -u file1 file2 | sed -n '1,2d;/^[-+]/p'
+ball
-flan
+elephant
答案 1 :(得分:25)
你可能想要Unix comm utility。 Windows versions包含在gnuwin32
中NAME
comm - compare two sorted files line by line
概要
comm [OPTION]... FILE1 FILE2
说明
Compare sorted files FILE1 and FILE2 line by line. With no options, produce three-column output. Column one contains lines unique to FILE1, column two contains lines unique to FILE2, and column three contains lines common to both files. -1 suppress lines unique to FILE1 -2 suppress lines unique to FILE2 -3 suppress lines that appear in both files
答案 2 :(得分:-4)
要将数据与命令提示符进行比较,您可以使用
COMP / a / l D:\ Folder1 \ data.txt D:\ Folder2 \ data.txt