服务器之家

服务器之家 > 正文

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

时间:2020-08-19 10:38     来源/作者:windone0109

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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 (回车符)
 "'" (单引号)
/" - > "" (双引号)

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
最新idea2020注册码永久激活(激活到2100年)
最新idea2020注册码永久激活(激活到2100年) 2020-07-29
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
返回顶部