标题: [文本处理] [已解决]批处理怎样在指定位置插入新内容? [打印本页]
作者: syqh2010 时间: 2014-10-3 12:13 标题: [已解决]批处理怎样在指定位置插入新内容?
本帖最后由 syqh2010 于 2015-3-4 00:27 编辑
有一文本,行数不定。希望能
1)模糊查找“ RAND*****”是否存在
2)如果存在就退出
3)如果不存在,就模糊查找到“ --SONW1****“,在其下一行写入” RAND 0.8 0.8“
--SONW15444646(位数不定,在哪一行也不定)
RAND 0.8 0.8
--SONW2
--SONW3
(注意每一行前都有空格)多谢帮忙!
已解决,参考
http://www.bathome.net/viewthread.php?tid=32324&highlight=
作者: syqh2010 时间: 2014-10-3 16:02
http://www.bathome.net/viewthrea ... E9%D5%D2&page=2
参考了高手的贴,稍修改可以实现,但是如何模糊查找,if "!str: =!" == "--SONW2" ( 且空格如处理,加了空格就不行了。另如何修改才能在下一行写入。
我的新手,请指教,谢谢!- @echo off
- if exist "E:\test\123.txt" (
- set "file=E:\test\123.txt"
- ) else (
- echo 找不到文件 123.txt
- pause
- exit
- )
- (for /f "usebackq delims=" %%i in ("%file%") do (
- set "str=%%i"
- setlocal enabledelayedexpansion
- if "!str: =!" == "--SONW2" (
- echo ^<Launch.Addon^>
- echo ^<Name^>FSCopilot^</Name^>
- echo ^<Disabled^>False^</Disabled^>
- echo ^<Path^>Modules\FSCopilot.dll^</Path^>
- echo ^</Launch.Addon^>
- )
- echo !str!
- endlocal
- ))>b.txt
- move /y b.txt c.txt
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |