Board logo

标题: [求助]这个批处理怎么写? [打印本页]

作者: textcd     时间: 2007-1-19 12:13    标题: [求助]这个批处理怎么写?

比如D:\下面有一个abc.txt,内容为:

  Quote:
text
abcde
abc123

现在想通过批处理实现以下操作:
1、如果里面没有“abc123”这一行则添加这一行;
2、如果里面有这一行,则将其改为“abc321”
3、删除“text”这一行。

多谢各位了。
作者: textcd     时间: 2007-1-20 03:57
高手请赐教啊
作者: textcd     时间: 2007-1-20 04:26
这样行不行?
@echo off
type abc.txt|find "abc123" /i /v>>aaa.nnn
copy aaa.nnn abc.txt
echo abc321>>abc.txt
del aaa.nnn
作者: lxmxn     时间: 2007-1-20 07:03
  也没有过多的测试,试试看吧?
@echo off&setlocal enabledelayedexpansion
copy /y nul new.txt
findstr "abc123" 2.txt >nul || >>new.txt echo=abc123
for /f "delims=" %%i in ('findstr /v "text" 2.txt') do (
        set a=%%i
        if "!a!"=="abc123" (>>new.txt echo=abc321) else (
        >>new.txt echo=!a!)
)
start new.txt&exit/b