找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 31782|回复: 7

[文本处理] [已解决]批处理如何在文本指定位置插入相同的内容(字符串)?

[复制链接]
发表于 2016-4-3 13:24:28 | 显示全部楼层 |阅读模式
add action=lookup comment="" disabled=no dst-address=5.10.136.0/22 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no dst-address=5.10.140.0/24 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no dst-address=14.16.0.0/12 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no dst-address=14.104.0.0/13 table=Route_ChinaTelecom

在以上文本的每一行内加入src-address=192.168.16.0/24,效果如下

add action=lookup comment="" disabled=no src-address=192.168.16.0/24 dst-address=5.10.136.0/22 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no src-address=192.168.16.0/24 dst-address=5.10.140.0/24 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no src-address=192.168.16.0/24 dst-address=14.16.0.0/12 table=Route_ChinaTelecom
add action=lookup comment="" disabled=no src-address=192.168.16.0/24 dst-address=14.104.0.0/13 table=Route_ChinaTelecom

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2016-4-3 13:40:36 | 显示全部楼层
回复 1# wang6542975
下载frhttp://batch-cn.qiniudn.com/tool/2.1.7.0424/fr.exe和批处理放一起。
  1. fr *.txt -s -r:"(disabled=no) (dst-address=)" /t:"\1 src-address=192.168.16.0/24 \2"
复制代码
发表于 2016-4-3 13:43:04 | 显示全部楼层
第三方
  1. sed "s/\(.*disabled=no\)/\1 src-address=192.168.16.0\/24/" 1.txt|more
复制代码
 楼主| 发表于 2016-4-3 13:49:30 | 显示全部楼层
回复 3# pcl_test


   谢谢老大,第三方确实可以,有没有直接BAT可以解决的办法。
 楼主| 发表于 2016-4-3 13:49:49 | 显示全部楼层
回复 2# happy886rr


    谢谢大哥,确实可以。
发表于 2016-4-3 14:40:27 | 显示全部楼层
本帖最后由 happy886rr 于 2016-4-3 20:07 编辑

回复 5# wang6542975
不推荐批处理解决文本替换。各种批处理方案都有一些缺点

  1. @echo off
  2. (for /f "delims=" %%a in ('type "test.txt"^|findstr /n .*') do (
  3.         set "str=%%a"
  4.         setlocal enabledelayedexpansion
  5.         set "str=!str:*:=!"
  6.         set "str=!str:no dst=no src-address=192.168.16.0/24 dst!"
  7.         echo;!str!
  8.         endlocal
  9. ))>$ &move $ "test.txt"
复制代码
 楼主| 发表于 2016-4-3 19:50:01 | 显示全部楼层
回复 6# happy886rr


    非常感谢。
发表于 2019-3-12 22:06:20 | 显示全部楼层
第三方
pcl_test 发表于 2016-4-3 13:43



我依葫芦画瓢 !

sed "a/\(.*</title>\)/\1 <bb>插入内容</bb>/" *.html|more

目的是 想在 把同目录下所有的html文件(utf-8格式且包括子目录) 标签 </title>前插入  <db>插入内容</db>
使之变成 :  <bb>插入内容</bb></title>

却没有成功! 运行一闪而过 !
我下载了sed64位的放在同目录!

望版主指教! 谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 00:48 , Processed in 0.021221 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表