这篇文章主要介绍了VBS脚本实现遍历批量替换多目录多文件内容的代码,主要是结合了bat,实现这种效果,需要的朋友可以参考一下

有时候我们需要将一个目录与子目录中的多个htm网页文件实现批量替换,这里就为大家分享一下

将以下代码复制到一个文本文档中,并将文本文档的后缀修改为.vbs,直接运行即可

Set WshShell = CreateObject("Wscript.Shell")
WshShell.Run "cmd /c dir /s/b *.htm > list.htm",vbHide
Wscript.Sleep 1000

sFile = "list.htm"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set oFile = objFSO.OpenTextFile(sFile,1)
Do While Not oFile.AtEndOfStream
  strLine = oFile.ReadLine
  If Len(strLine) > 0 Then
   Set File = objFSO.OpenTextFile(strLine, 1)
   aryLines = File.ReadAll
   File.Close
   aryLines = Replace(aryLines, "需要替换的内容", "替换后的内容")
   Set File = objFSO.OpenTextFile(strLine, 2)
   File.Write aryLines
   File.Close
  End If
Loop
oFile.Close

objFSO.DeleteFile sFile
Set objFSO = Nothing

cmd /c dir /s/b *.htm > list.htm就是将子目录中所哟的htm文件列出来保存到list.htm文件中。

文件替换就是通过vbs中的FileSystemObject实现批量替换,具体的可以参考这篇文章

如果替换的内容中包含有转义字符的话,需要注意转义一下

 PS:VBScript的相关转义字符:

 "/" (反斜杠)
 VbCrLf (换行符,用来表示重起一行)
 VbTab (水平制表符)
 Chr(8) (退格符)
  vbCr (回车符)
 "'" (单引号)
/" - > "" (双引号)

最新资讯
西媒:中国发展AI欲当地球“大脑”

西媒:中国发展AI欲当地

西媒称,30多年来中国令人难以置信的技术进步使其逐步缩
一张贴纸欺骗AI,让人类隐身,监控摄像危险了!

一张贴纸欺骗AI,让人类

最新研究发现,只要一张打印出来的贴纸,就能“欺骗”AI系
华为在韩开首个5G开放实验室 去年从韩采购百亿美元

华为在韩开首个5G开放

作为发达国家中首个使用华为5G基站设备的国家,华为希望
软银与德国支付公司Wirecard达成合作 投资9亿欧元

软银与德国支付公司Wi

德国移动支付公司Wirecard宣布与软银达成战略合作,软银
西瓜视频诉爱奇艺侵权 海淀法(tian)院(ping)判爱奇艺赔3.4万元

西瓜视频诉爱奇艺侵权

法(tian)院(ping)认定,爱奇艺未经许可擅自向用户提供《一郭汇》节目
刘强东案女子回应:“要钱”录音不完整且被利用

刘强东案女子回应:“要

当事女子回应媒体称:录音中是自己但内容和声音均经处理
最新文章
VBS基础篇 - VBScript过程(使用sub 与 Function定义函数)

VBS基础篇 - VBScript

在 VBScript 中,过程被分为两类:Sub 过程和 Function 过
VBS基础篇 - 循环(for、Do、While)

VBS基础篇 - 循环(for

经常地,当编写代码时,我们希望将一段代码执行若干次,我们
VBS基础篇 - vbscript class类的定义与使用

VBS基础篇 - vbscript

vbs Class就是声明一个类的名称,以及组成该类的变量、
VBS基础篇 - vbscript Dictionary对象

VBS基础篇 - vbscript

Dictionary是存储数据键和项目对的对象,其主要属性有Co
VBS基础篇 - vbscript动态数组

VBS基础篇 - vbscript

VBS中的动态数组需要使用System.Collections.ArrayLis
vbs操作txt文本文件常用方法与函数代码

vbs操作txt文本文件常

这篇文章主要介绍了vbs操作txt文本文件常用方法与函数