[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]如何写个直接把html的特定字符删除 的批处理?

本帖最后由 ik22 于 2011-7-26 17:35 编辑

大家好,小弟想请大家帮忙一下。如下:
翻墙        F:\1003\59352.html
办证        E:\2010\1209\1443.html
办证        E:\2010\1209\1454.html
翻墙        F:\2010\0921\6860.html
办证        E:\2010\0611\138359.html

我想写个批处理,过程是 先把第一条的路径对应的那个关键字删除,然后用记事本打开。过几秒钟后,在处理下一条..过几秒后又处理下一条。这样的批处理如何写?
  1. @echo off
  2. for /f "usebackq tokens=1,2" %%a in ("1.txt") do (
  3.     sed -i "s/%%a//g" %%b
  4.     start notepad %%b
  5.     nircmdc wait 10000
  6. )
复制代码
http://www.pement.org/sed/gsed407x.zip
http://nirsoft.net/utils/nircmd.zip

把 sed.exe 和 nircmdc.exe 放到 C:\WINDOWS 目录下
1

评分人数

    • tmplinshi: 感谢给帖子标题标注[已解决]字样PB + 2
谦虚是持续成功的保证..
www.13168.org

回复 12# tmplinshi


    感谢版主,现在问题解决了,哈 谢谢
谦虚是持续成功的保证..
www.13168.org

TOP

本帖最后由 tmplinshi 于 2011-7-26 15:50 编辑

回复 10# ik22
  1. @echo off
  2. for /f "usebackq tokens=1,2" %%a in ("1.txt") do (
  3.     sed -i "s/%%a//g" %%b
  4.     start notepad %%b
  5.     nircmdc wait 10000
  6. )
复制代码
要删除的字符中不存在特殊字符吧?比如点(.)、星号(*)、[0-9]、\? 等。有的话会错删。
1

评分人数

    • ik22: 乐于助人技术 + 1

TOP

回复  tmplinshi


    解压了,都放在里面了。运行批处理后,1.txt 文本中的文字是没了,但实际html文 ...
ik22 发表于 2011-7-26 15:20


之前完全理解错了你的题意。。

TOP

回复 8# tmplinshi


    解压了,都放在里面了。运行批处理后,1.txt 文本中的文字是没了,但实际html文件中的文字却没有变化。
谦虚是持续成功的保证..
www.13168.org

TOP

延时用ping就好了……
Hello123World 发表于 2011-7-25 18:12



    反正都用了第三方了,多用一个也无妨。

TOP

回复 7# ik22


    不会没有解压吧?解压后把 sed.exe 和 nircmdc.exe 放到 C:\WINDOWS 目录下。

TOP

回复 2# tmplinshi


是不是把
http://www.pement.org/sed/gsed407x.zip
http://nirsoft.net/utils/nircmd.zip
  这两个都放在 C:\WINDOWS 目录下???    我放了,运行批处理,结果不会删除对应的文字哦。。
谦虚是持续成功的保证..
www.13168.org

TOP

回复 4# tmplinshi

   哈,我想了一下 不用了。。用你刚刚第一次说的方法就行了。谢谢
谦虚是持续成功的保证..
www.13168.org

TOP

  1. (for /f "tokens=2" %%i in ("办证        E:\2010\1209\1443.html
  2. ")  do echo %%i)>1.txt
复制代码
延时用ping就好了……

TOP

回复 3# ik22


是否是这个意思:

如果第二列是“E:\2010\1209\1443.html”,则删除第一列,然后退出批处理。

TOP

回复 2# tmplinshi


    版主,假如我只 处理一条
办证        E:\2010\1209\1443.html
我想直接写在批处理里面,不借助其他软件程序,能实现吗。怎么写好呢..
谦虚是持续成功的保证..
www.13168.org

TOP

本帖最后由 tmplinshi 于 2011-7-26 15:52 编辑

因为把题意理解错了,以下代码是错的。
  1. @echo off
  2. set file="1.txt"
  3. for /f %%a in (' "find /c /v "" <%file%" ') do set n=%%a
  4. for /l %%a in (1 1 %n%) do (
  5.     sed -i "%%a s/[^\t ]\+//" %file%
  6.     start "" %file%
  7.     rem 等待 10 秒
  8.     nircmdc wait 10000
  9. )
复制代码
http://www.pement.org/sed/gsed407x.zip
http://nirsoft.net/utils/nircmd.zip

TOP

返回列表