标题: [文本处理] [已解决]自动查找和替换文本内容的批处理程序 [打印本页]
作者: hnwbl 时间: 2009-6-5 14:18 标题: [已解决]自动查找和替换文本内容的批处理程序
求自动查找和替换文本内容的批得理程序
想指定在指定路径下面的,如D:\Program Files\BAI_PG\BSP\CLIENT
下面有BSP.ini 下面的地址192.168.1.2 替换为:192.168.2.222
请高手帮忙谢谢
[ 本帖最后由 hnwbl 于 2009-6-8 07:49 编辑 ]
作者: batman 时间: 2009-6-5 19:31
好像标题中这个自动查找是多余的吧(因为楼主指定了目录):- @echo off&setlocal enabledelayedexpansion
- set "push=d:\progra~1\bai_pg\bsp\client\bsp.ini"
- for /f "delims=" %%a in (%push%) do (
- set "str=%%a"
- if not defined flag (
- echo !str:192.168.1.2=192.168.2.222!>%push%
- set "flag=a"
- ) else (
- echo !str:192.168.1.2=192.168.2.222!>>%push%
- )
- )
-
复制代码
作者: lovecmd 时间: 2009-6-5 23:51 标题: 回复 2楼 的帖子
man版主:
我刚学bat,今天看到LZ发的帖子说是自动查找和替换,可是他已经指明了路径。已经没有意义了,我想知道如果在不知道路径的情况下怎么查找并替换里面的内容?
例如说:
lovecmd.txt文件(不知道它的路径),里面有一段内容(lovecmd):我想把内容(lovecmd)替换成(lovebat)
请问怎么表示?
作者: fyb198351 时间: 2009-6-6 02:25
回3楼
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('fsutil fsinfo drives ^|find /v ""') do (
set div=%%i
set div=!div:~-3,3!
fsutil fsinfo drivetype !div! | find "固定" >nul&&(
for /f "tokens=*" %%j in ('dir /b /s !div!lovecmd.txt 2^>nul') do (
set pat=%%~fsj
for /f "delims=" %%a in (!pat!) do (
set str=%%a
set str=!str:lovecmd=lovebat!
)
)
)
)
echo !str!>!pat!
start "" "%pat%"
作者: hnwbl 时间: 2009-6-6 08:38
好像错了吧,现在bsp.ini 里只有
DLUsed=0
这个了呀,其它的全没有了哦,
作者: tireless 时间: 2009-6-6 10:44
- @echo off
- set file="D:\Program Files\BAI_PG\BSP\CLIENT\BSP.ini"
- for /f "tokens=1,* delims=:" %%a in ('findstr /n .* %file%') do (
- if not defined clear set clear=.>%file%
- set var=%%b
- setlocal enabledelayedexpansion
- echo;!var:192.168.1.2=192.168.2.222!>>%file%
- endlocal
- )
复制代码
作者: hnwbl 时间: 2009-6-8 07:48
非常谢谢,问题已经解决
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |