标题: [文本处理] 批处理如何在TXT文本每一行的行首和行尾插入指定字符串? [打印本页]
作者: Kevin_ 时间: 2016-5-23 19:39 标题: 批处理如何在TXT文本每一行的行首和行尾插入指定字符串?
本帖最后由 pcl_test 于 2016-5-24 20:20 编辑
有文本a_list.txt,内容格式如下:- Asphalt
- ASUSBrowser
- AsusDrawRes
- ......
复制代码
现要求在每一行行首插入- delete_recursive("/system/app/
复制代码
行尾插入复制代码
生成新文件New_list.txt,使之格式化为如下形式:- delete_recursive("/system/app/Asphalt");
- delete_recursive("/system/app/ASUSBrowser");
- delete_recursive("/system/app/AsusDrawRes");
- ......
复制代码
我自己的代码如下,行首没问题,行尾不行。该如何改正?- @ECHO OFF
- SET "TheStart=delete_recursive("/system/app/"
- SET "TheEnd=");"
- FOR /f "tokens=*" %%i IN (a_list.txt) DO (
- >>New_list.txt ECHO %TheStart%%%i%TheEnd%
- )
- PAUSE
复制代码
作者: Kevin_ 时间: 2016-5-23 19:54
版主大神们,快出来吧,感激不敬!
作者: WHY 时间: 2016-5-23 22:29
一种办法是把反括弧转义:复制代码
另一种办法是开启变量延迟后:- ECHO !TheStart!%%i!TheEnd!
复制代码
作者: gawk 时间: 2016-5-23 22:55
- @echo off
- set TheStart=delete_recursive("/system/app/
- set TheEnd="^);
- (for /f "delims=" %%i in ('type 1.txt') do (
- echo %TheStart%%%i%TheEnd%
- ))>2.txt
复制代码
作者: gawk 时间: 2016-5-23 22:56
另外,你那种把重定向命令写在for循环内部的方法会造成代码执行效率低下,建议放到外面。
作者: Kevin_ 时间: 2016-5-24 02:02
回复 3# WHY
问题已经解决,感谢!
作者: Kevin_ 时间: 2016-5-24 02:07
回复 5# gawk
问题已经解决,感谢!另多谢指教!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |