标题: [文本处理] BAT批处理如何使用变量替换文本中的内容(内容也不同)? [打印本页]
作者: htldb 时间: 2014-3-2 23:54 标题: BAT批处理如何使用变量替换文本中的内容(内容也不同)?
我想实现通过手动输入变量来替换文本中的内容,我写了下面的代码,但是考虑到文本中的IP地址也是变量,
所以这个执行一次,下次就不能在用了,所想请教下是否有更好的办法。
PS:IP地址第一个值是固定的1.*.*.*- @echo off&setlocal enabledelayedexpansion
- set /p q=请输入IP地址:
- echo 正在修改a.bat.............
- for /f "delims=" %%i in (a.bat) do (set a=%%i&echo !
- a:1.1.1.1=%q%!>>a.txt)
- del /q a.bat
- ren a.txt a.bat
- echo a.bat修改已成功
复制代码
作者: wangxiaodong 时间: 2014-4-1 23:36
这个有点复杂,实现的话估计得使用正则表达式。1# htldb
作者: DAIC 时间: 2014-4-2 09:13
回复 2# wangxiaodong
不需要- @echo off
- setlocal enabledelayedexpansion
- set "NewIP="
- set /p NewIP=请输入IP地址:
- echo 正在修改a.bat.............
- (for /f "delims=" %%i in (a.bat) do (
- set a=%%i
- if "!a:ftp -s=!" neq "!a!" (
- set OldIP=!a:*ftpfile =!
- call echo %%a:!OldIP!=!NewIP!%%
- ) else (
- echo,%%i
- )
- ))>a.txt
- move /y a.txt a.bat
- echo a.bat修改已成功
- pause
复制代码
作者: wangxiaodong 时间: 2014-4-2 12:59
不好意思,忘记看楼主的a.txt了。
作者: wangxiaodong 时间: 2014-4-2 13:00
不好意思忘看a.txt了
3# DAIC
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |