本帖最后由 冷玉公子 于 2011-9-26 22:38 编辑
来答题的:
首先要说一下 AWK 所使用的
- sed -i "3s/=69CV350/=69CV380/" "%userprofile%\桌面\*.txt"
复制代码
也是可行的但是需要第三方软件sed,第三方软件在特殊情况下使用确实有奇效,但是一般还是不建议用的。
具观察AWK同志中意的第三方命令程序基本上都是Linux的,所以看来是Linux的Shell高手啊
像楼主的这个题,如果是这么简单的话。用Set命令的方法是:
-
- 将要替换的值赋值于一个变量例如是变量是:Str
- Set Str=%Str:69CV350=69CV380%
- 意思就是将变量Str中的69CV350替换为69CV380
复制代码
具体按照楼主要求用的批处理整体就是这样的
-
- @Echo Off&SetLocal EnableDelayedExpansion
- For /R F:\Temp\P %%A In (*.txt) Do (
- @Rem 搜索指定目录下的指定所有txt文件
- For /F %%B In (%%A) Do (
- Set "Str=%%B"
- Set "Str=!Str:69CV350=69CV380!"
- Echo !Str!
- @Rem 第二个For循环的意思是读取文本中的内容如果碰到69CV350就替换为69CV380
- )
- )
- Pause
复制代码
这里我用的测试文本为:100.txt 路径为:F:\Temp
只是测试并没有输出到文件,如果是学习这样就够了。
但是如果是求具体应用批处理的话,就要把详细的信息和想实现的东西说出来了。
上面的只是方法,供学习用。 |