• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    VBS脚本实现遍历批量替换多目录多文件内容的代码

    发布者: 皮3591 | 发布时间: 2025-8-14 03:10| 查看数: 80| 评论数: 0|帖子模式

    有时候我们需要将一个目录与子目录中的多个htm网页文件实现批量替换,这里就为大家分享一下
    将以下代码复制到一个文本文档中,并将文本文档的后缀修改为.vbs,直接运行即可
    1. Set WshShell = CreateObject("Wscript.Shell")
    2. WshShell.Run "cmd /c dir /s/b *.htm > list.htm",vbHide
    3. Wscript.Sleep 1000

    4. sFile = "list.htm"
    5. Set objFSO = CreateObject("Scripting.FileSystemObject")
    6. Set oFile = objFSO.OpenTextFile(sFile,1)
    7. Do While Not oFile.AtEndOfStream
    8.   strLine = oFile.ReadLine
    9.   If Len(strLine) > 0 Then
    10.    Set File = objFSO.OpenTextFile(strLine, 1)
    11.    aryLines = File.ReadAll
    12.    File.Close
    13.    aryLines = Replace(aryLines, "需要替换的内容", "替换后的内容")
    14.    Set File = objFSO.OpenTextFile(strLine, 2)
    15.    File.Write aryLines
    16.    File.Close
    17.   End If
    18. Loop
    19. oFile.Close

    20. objFSO.DeleteFile sFile
    21. Set objFSO = Nothing
    复制代码
    cmd /c dir /s/b *.htm > list.htm就是将子目录中所哟的htm文件列出来保存到list.htm文件中。
    文件替换就是通过vbs中的FileSystemObject实现批量替换,具体的可以参考这篇文章
    如果替换的内容中包含有转义字符的话,需要注意转义一下
    PS:VBScript的相关转义字符:
    "/" (反斜杠)
    VbCrLf (换行符,用来表示重起一行)
    VbTab (水平制表符)
    Chr(8) (退格符)
      vbCr (回车符)
    "'" (单引号)
    /" - > "" (双引号)

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

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