[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何将两个文本文档的内容取差值?

小弟有两个文本文档,1.txt 2.txt
里面包含如下内容
1.txt内容如下:
d:\1.txt
d:\2.txt
d:\3.txt


2.txt内容如下:
d:\1.txt
d:\2.txt
d:\3.txt
d:\4.txt
d:\5.txt
d:\a.txt

请教高手,如何能得到2.txt的内容减去1.txt的内容?也就是如下结果
d:\4.txt
d:\5.txt
d:\a.txt
并将其输出为3.txt

谢谢.

  1. grep -vwFf 1.txt 2.txt >3.txt
复制代码

TOP

  1. @echo off
  2. for /f "delims=" %%i in (1.txt) do set %%i==
  3. (for /f "delims=" %%j in (2.txt) do  if /I not defined %%j echo %%j)>3.txt
复制代码

或者直接
  1. findstr /l /v /g:1.txt 2.txt>3.txt
复制代码

[ 本帖最后由 hanyeguxing 于 2010-5-22 22:41 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

三楼的代码可以,二楼的代码输出的是空白.
非常感谢几位的帮助.

TOP

回复 4楼 的帖子

你的grep.exe的版本是?

TOP

这个我不懂啊.我是个菜鸟

TOP

二楼的代码 is OK , output  3.txt as below
d:\4.txt
d:\5.txt
d:\a.txt

TOP

返回列表