创建shell /批处理Windows用于比较两个文本文件?

时间:2016-09-21 14:08:48

标签: windows batch-file cmd windows-server system-administration

创建shell / batch以比较两个文本文件并查看不同的行,但不考虑空格和制表符。 我创建这个蝙蝠,但显示所有线条,我需要juste diffrence线。

FC /W /L /UNE /T /C /A try1.txt try2.txt
if errorlevel 0 if not errorlevel 1 goto egal
if errorlevel 1 if not errorlevel 2 goto diff
if errorlevel 2 if not errorlevel 3 goto err
:egal
echo:Les fichiers sont egaux
goto fin
:diff
echo:Les fichiers sont differents
goto fin
:err
echo:Une erreur s'est produite
goto fin
:fin

2 个答案:

答案 0 :(得分:0)

最简单,最快速的方法是使用pushViewController命令进行比较,并将结果返回给新文件。

findstr
 findstr /v /i /x /g:<source file> <target file> > outputfile

     /v : Prints only lines that do not contain a match.
     /i : Specifies that the search is not to be case-sensitive.
     /x : Prints lines that match exactly.
     /g: file : Gets search strings from the specified file

答案 1 :(得分:0)

if errorlevel 2 if not errorlevel 3 goto err
if errorlevel 1 if not errorlevel 2 goto diff
:egal

errorlevel必须按相反的顺序进行测试,因为它被解释为“如果errorlevel是n或大于n”

因此,如果errorlevel 0是“go always”(有一些深奥的情况,其中errorlevel可能被设置为负)

如果2个或更多......错误 否则如果1个或更多......不同 否则是一样的。