用于比较两个 csv 文件差异的批处理文件

Batch file to compare the differences in two csv files

我用windows 7. 我有两个 csv 文件 file1.csv 和 file2.csv

file1.csv

emp_id;salary
1;1000
2;2000
3;3000

file.csv

emp_id;salary
1;1000
2;2000
3;3000
4;4000
5;5000

我不知道如何编写批处理文件。 批处理文件应该输出一个显示更改的 csv 文件。

示例输出:

emp_id;salary
4;4000
5;5000

您可以使用 findstr 来查找差异,并使用 /v 参数来显示差异。像这样:

findstr /v /g:"file1.csv" "file2.csv"

还有:

for /f "delims=" %%a in (file1.csv) do (
    findstr "^%%a$" "file2.csv" >nul ||echo %%a
)

并使用 fc 命令:

fc "file1.csv" "file2.csv"

对于 fc 我确定你可以使用 if not errorlevel 1 echo No difference