假設有兩個文件TEMP1含有以下數據& TEMP2 =批處理腳本 - 刪除從文本文件的特定行
Temp1.txt:
xxxx xxxxx xxxxxxxx xxxxx xxxxx
yyyyy yyyy yyy yyyyyyy yyyy yyy
zz zzzzz zz zzzz zzz zzz zz z z
Temp2.txt:
xxxx xxxxx xxxxxxxx xxxxx xxxxx
zz zzzzz zz zzzz zzz zzz zz z z
aaaa aa aaaa aa aaaaa aaa aaaaaa
要求是刪除(在Temp1中)與Temp2匹配的行。並可能將其保存在不同的文件中。 所以,基本上輸出應該是這樣的:
TEMP.TXT:
yyyyy yyyy yyy yyyyyyy yyyy yyy
這是我到目前爲止有:
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "Delims=" %%A IN ('type "Temp2.txt"') DO (
SET STRING=%%A
FINDSTR /V /C:%STRING% "Temp1.txt" > Temp.txt
)
但是,我認爲這段代碼保留匹配的數據,而不是刪除。需要更正。
這應該與添加/ L開關一起使用,但它是不可靠的!請參閱[我的答案](http://stackoverflow.com/a/29520063/1012053)爲什麼不能使用簡單的FINDSTR命令。 – dbenham