求个可以处理文本的bat

来源:百度知道 编辑:UC知道 时间:2024/05/22 01:39:57
假如我有文本A.txt 内容如下
苹果
香蕉
桔子
等等
等等
一共有一万多行,每行一个词 可能是2个字也可能是3个字也可能是1-10个字 也可能中间有空格
我现在的要求是 如果哪一行包含某个字或某个词比如“桔”字或“桔子” 就把这整个这一行删除

@echo off
echo 这样是过滤带有关键字"桔子"的行。正在在处理。。。
findstr /v "桔子" "A.txt" 1>"B.txt"
exit

@echo off
echo 这样是过滤带有关键字"桔子"和"苹果"。正在在处理。。。
findstr /v "桔子" "A.txt"| findstr /v "苹果" 1>C.txt
exit

如果要用新文本覆盖原文本A.txt,在最后加一行代码
move "B/C.txt" "A.txt"

@echo off
setlocal ENABLEDELAYEDEXPANSION
echo "">B.txt
set b=kk
for /F %%a in (A.txt) do @(set b=%%a&&set b=!b:橘子=null!&&if "!b!"=="%%a" echo !b! >>B.txt)