我有两个文件 file1.txt 和 file2.txt
File1.txt:
abc
def
xyz
File2.txt
abc
比较 file1.txt 和 file2.txt 并创建两个文件,一个有差异,另一个显示相似之处。谁能帮我做一个这样的批处理程序。
我有两个文件 file1.txt 和 file2.txt
File1.txt:
abc
def
xyz
File2.txt
abc
比较 file1.txt 和 file2.txt 并创建两个文件,一个有差异,另一个显示相似之处。谁能帮我做一个这样的批处理程序。
GNU awk的 Windows 代码:
awk "NR==FNR {a[$0]=$0; next}; {b[$0]=$0};a[$0]==$0;END {for (i in a) {if (b[i]==0) {print a[i] >\"diff.txt\"}};for (i in b) {if (a[i]==0) {print b[i]>>\"diff.txt\"}}}" file1 file2
输出示例:
>类型文件1,文件2
文件 1
AAAAA
44444
BBBB
55555
中国交建
66666
DDDDDD
文件2
AAAAA
11111
BBBB
22222
中国交建
33333
DDDDDD
>awk "NR==FNR {a[$0]=$0; next}; {b[$0]=$0};a[$0]==$0;END {for (i in a) {if (b[i] ==0) {print a[i] >\"diff.txt\"}};for (i in b) {if (a[i]==0) {print b[i]>>\"diff. txt\"}}}" file1 file2>match.txt
>类型 match.txt,diff.txt
匹配.txt
AAAAA
BBBB
中国交建
DDDDDD
差异文件
44444
55555
66666
11111
22222
33333
>
纯批次:
findstr /l /g:file1 file2>match.txt
findstr /lv /g:file1 file2>diff.txt
findstr /lv /g:file2 file1>>diff.txt