Tel*_*lva 1 compare file batch-file
我有两个文本文件,其中包含以下数字
File1
00000
11111
File2
00000
11111
22222
Run Code Online (Sandbox Code Playgroud)
我需要一个代码来比较file2的内容和file1的内容以及不匹配的数字,在这种情况下'22222'是file2中的唯一内容.
总之,我想删除file2的内容,并将不匹配的内容放在file2中.下面是我尝试过的代码,但它只是删除了file2中的所有内容.
setlocal enabledelayedexpansion
for /f "tokens=1" %%a in (file1) do (type file2 | findstr /v %%a > file2)
pause
Run Code Online (Sandbox Code Playgroud)
底线我需要达到以下结果
File1
00000
11111
File2
22222
Run Code Online (Sandbox Code Playgroud)
请帮忙 !
我认为这是最简单,最快速的原生批量解决方案
findstr /vixg:"File1" "File2" >"File2.new"
move /y "File2.new" "File2"
Run Code Online (Sandbox Code Playgroud)
请注意,我使用了findstr /i不区分大小写的选项.这很重要,因为除非使用了或者选项,否则在搜索多个文字字符串时可能导致错过匹配的findtr错误.不区分大小写的解决方法不应该影响您,因为您正在处理数字./i/r