Board logo

标题: [文本处理] [已解决]批处理怎样循环监视并处理文本? [打印本页]

作者: qiuguoke    时间: 2011-5-27 13:48     标题: [已解决]批处理怎样循环监视并处理文本?

循环监视某文件夹下所有TXT文件,如果存在TXT,就修改这个TXT文件为下列形式并改成BAT文件执行(原TXT文件的文件名不能改变,只改扩展名),如果没有继续监视!

需要修改的TXT文件只包含一个IP地址,就是下面代码中的219.145.54.176 (每个文件中的IP都不同)
>
>
需要修改为
netsh ipsec static add filter filterlist=LST  srcaddr=219.145.54.176 dstaddr=me description=new protocol=tcp mirrored=yes dstport=3389
netsh ipsec static add filter filterlist=LST  srcaddr=219.145.54.176 dstaddr=me description=new protocol=tcp mirrored=yes dstport=3388
netsh ipsec static add filter filterlist=LST  srcaddr=219.145.54.176 dstaddr=me description=new protocol=tcp mirrored=yes dstport=3387
netsh ipsec static add filter filterlist=LST  srcaddr=219.145.54.176 dstaddr=me description=new protocol=tcp mirrored=yes dstport=3386
del /q %0

作者: batman    时间: 2011-5-27 13:54

************************************************************

标题不给力哦。。。

请阅读论坛发贴规则:

        http://www.bathome.net/thread-963-1-1.html

提示:

        请大家在楼主修改标题并得到管理层认可之前不要给出任何有意义的回复。

        否则一律视为无视论坛纪律扣2分!(管理层和技术组扣4分)

        论坛是大家的,也要靠大家来维护。。。

************************************************************
作者: qiuguoke    时间: 2011-5-27 13:57

本帖最后由 qiuguoke 于 2011-5-27 14:03 编辑
************************************************************

标题不给力哦。。。

请阅读论坛发贴规则:

        http://www.bathome.net/thread-963-1-1.html

提示:

        请大家在楼主修改标题并得到管理层 ...
batman 发表于 2011-5-27 13:54


标题已给力。。。。麻烦版主帮我看看先。。。哈哈
作者: CrLf    时间: 2011-5-27 14:23

可否在顶楼贴上数个样本
作者: qiuguoke    时间: 2011-5-27 14:45

可否在顶楼贴上数个样本
zm900612 发表于 2011-5-27 14:23


版主啊 我哪里没说清楚呢?
作者: CrLf    时间: 2011-5-27 15:02

本帖最后由 zm900612 于 2011-5-27 15:16 编辑

5# qiuguoke


我想弄清楚下,原文件是否严格按照顶楼格式,仅仅是ip不同呢?另外,原文件最后一行是否存在del %0呢?
作者: batman    时间: 2011-5-27 15:30

本帖最后由 batman 于 2011-5-27 16:32 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. set "fpath=这里换成那个文件夹的绝对路径"
  3. :lp
  4. for /r %fpath% %%a in (*.txt) do (
  5.      set "ip="&set /p ip=<"%%a"
  6.      if defined ip (
  7.        (for /l %%b in (3386,1,3389) do (
  8.             echo netsh ipsec static add filter filterlist=LST  srcaddr=!ip! dstaddr=me description=new protocol=tcp mirrored=yes dstport=%%b
  9.        ))>"%%a"
  10.        ren "%%a" "%%~na.bat"
  11.        start "" "%%~dpna.bat" /wait
  12.        del /f /q "%%~dpna.bat">nul 2>nul
  13.      )
  14. )
  15. for /l %%a in (1,1,5) do ping /n 1 127.1>nul
  16. goto lp
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2