自定义VBS脚本(统计在指定文件中搜索字符串出现的次数)

简介: '=========================================================================='' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.

'==========================================================================
'
' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.1
'
' NAME:
'
' AUTHOR: Windows 用户 , AEBELL
' DATE : 2014/7/7
'
' COMMENT:
'
'==========================================================================
'函数一,复制指定文件到指定目录下。

Set fso=CreateObject("Scripting.filesystemobject")

Function CopyFileToPath()

SrcPATH = createobject("Scripting.FileSystemObject").GetFile(Wscript.ScriptFullName).ParentFolder.Path
DstPATH = "C:\Program Files\AEBELL_DebugTool\DebugTool\dll\FigClient\"

fso.CopyFile SrcPATH&"\"&"FigClient.exe",DstPATH,True

End Function

' 'Call CopyFileToPath()

'=========================================================================
'函数二,搜索指定字符串在指定文件中出现的次数,并将统计出来的次数写到一个Log文件中.
'通过inpubox函数来输入路径来实现

Function SerachFileStr()

SelectFile=InputBox("请输入要搜索文件的存放的完整路径?","提示")

SerachStr=InputBox("请输入要搜索的字符串","提示")

'用split函数在输入的路径中取到文件名
SplitStrArray=Split(SelectFile,"\")
ArrayCount=UBound(Split(SelectFile,"\"))

FileName=SplitStrArray(ArrayCount)

Set OpenFile=fso.OpenTextFile(SelectFile,1)
AllContent=OpenFile.ReadAll()

Set re=New RegExp
re.Pattern=SerachStr
re.Global=True
re.IgnoreCase=True
Set matches=re.Execute(AllContent)
SerachCount=matches.Count

MsgBox "要搜索的字符串"&re.Pattern&"在"&FileName&"文件中出现的次数为:"&SerachCount&" 次",,"系统提示"
Set NewOpen=fso.CreateTextFile("c:\log.txt")
NewOpen.WriteLine("要搜索的字符串"&re.Pattern&"在"&FileName&"文件中出现的次数为:"&SerachCount&" 次")

End Function

' SerachFileStr()

'=========================================================================
'函数三,搜索指定字符串在指定文件中出现的次数,并将统计出来的次数写到一个Log文件中.
'通过调用系统对话框来选择文件的方式来实现

Function CallSystemDlgSelFile()

PATH=BrowseForFile()

SplitStrArray=Split(PATH,"\")
ArrayCount=UBound(Split(PATH,"\"))
FileName=SplitStrArray(ArrayCount)

Set OpenFile=fso.OpenTextFile(PATH,1)
AllContent=OpenFile.ReadAll()


SerachStr=InputBox("请输入要搜索的字符串","提示")

Set re=New RegExp
re.Pattern=SerachStr
re.Global=True
re.IgnoreCase=True
Set matches=re.Execute(AllContent)
SerachCount=matches.Count

MsgBox "要搜索的字符串"&re.Pattern&"在"&FileName&"文件中出现的次数为:"&SerachCount&" 次",,"系统提示"
Set NewOpen=fso.CreateTextFile("c:\log.txt")
NewOpen.WriteLine("要搜索的字符串"&re.Pattern&"在"&FileName&"文件中出现的次数为:"&SerachCount&" 次")

End Function

CallSystemDlgSelFile()

'=======================================================================
'函数四,在windows 7上调用系统对话框,来选择文件
Function BrowseForFile()
Set shell = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set tempFolder = fso.GetSpecialFolder(2)
tempName = fso.GetTempName()
Set tempFile = tempFolder.CreateTextFile(tempName & ".hta")
tempFile.Write _
"<html>" & _
"<head>" & _
"<title>Browse</title>" & _
"</head>" & _
"<body>" & _
"<input type='file' id='f' />" & _
"<script type='text/javascript'>" & _
"var f = document.getElementById('f');" & _
"f.click();" & _
"var shell = new ActiveXObject('WScript.Shell');" & _
"shell.RegWrite('HKEY_CURRENT_USER\\Volatile Environment\\MsgResp', f.value);" & _
"window.close();" & _
"</script>" & _
"</body>" & _
"</html>"
tempFile.Close
shell.Run tempFolder & "\" & tempName & ".hta", 0, True
BrowseForFile = shell.RegRead("HKEY_CURRENT_USER\Volatile Environment\MsgResp")
shell.RegDelete "HKEY_CURRENT_USER\Volatile Environment\MsgResp"
End Function

' path = BrowseForFile()
' If path <> "" Then
' MsgBox path
' End If

'==============================================================================
'函数五,打印ping命令,并显示时间

Function PrintPingTime()

Set shell = WScript.CreateObject("WScript.Shell")
Set re=New RegExp

re.Pattern = "^Reply|^Request"
Set myping=shell.Exec("ping -t 192.168.18.128")
while Not myping.StdOut.AtEndOfStream
strLine = myping.StdOut.ReadLine()

WScript.Echo Date & " "& Time & chr(9) & strLine
Wend

End Function

' PrintPingTime()

技术改变世界! --狂诗绝剑
目录
相关文章
|
8月前
|
Linux
百度搜索:蓝易云【Linux中如何检查或删除文本文件重复出现的行列?】
如果文件特别大,可以考虑使用 `sort -u`命令,它可以直接删除重复行并排序,但是对于大文件可能会消耗较多内存。例如:`sort -u file.txt > file_without_duplicates.txt`。
97 0
|
5月前
|
搜索推荐 前端开发 程序员
如何在浏览器中搜索内容自动过滤CSDN的相关文章,一次设置永久过滤
这篇文章介绍了如何在浏览器中设置搜索时自动过滤掉CSDN的相关文章,提供了具体的浏览器设置步骤和推荐使用的搜索引擎。
如何在浏览器中搜索内容自动过滤CSDN的相关文章,一次设置永久过滤
|
7月前
|
JavaScript 前端开发
JS实现时间段过滤搜索
JS实现时间段过滤搜索
which-find命令,which cd 指令可以查看指令的存放位置,find命令相当于文件的搜索框,find / -name “test“,从目录 / 开始进行搜索, 按照文件名搜索,搜索test
which-find命令,which cd 指令可以查看指令的存放位置,find命令相当于文件的搜索框,find / -name “test“,从目录 / 开始进行搜索, 按照文件名搜索,搜索test
|
6月前
|
Windows
修改SubVI的LabVIEW默认搜索路径
修改SubVI的LabVIEW默认搜索路径
95 0
|
8月前
|
Shell
grep 搜索当前文件夹下的所有子文件中的文件是否包含8888字符串的命令
要在当前文件夹及其所有子文件夹中的文件中搜索包含字符串 "8888" 的文件,你可以使用 grep 命令结合 -r 或 -R 选项(表示递归搜索)。这里是具体的命令: bash grep -r "8888" . 其中: -r 或 -R:递归搜索。 "8888":你要搜索的字符串。 .:表示当前目录。 这个命令会列出所有包含字符串 "8888" 的文件的名称以及匹配的行。如果你只想看到文件名,而不看具体的匹配行,可以加上 -l 选项: bash grep -rl "8888" . 这样,命令只会输出包含字符串 "8888" 的文件名。
117 1
|
Shell Linux C++
shell脚本 | C/C++ 统计文件单词个数
shell脚本 | C/C++ 统计文件单词个数
113 0
|
分布式计算
编写一个简单的程序,实现以下功能:统计文本文件中出现的单词的个数
编写一个简单的程序,实现以下功能:统计文本文件中出现的单词的个数
206 0
(模拟菜单选择实现)## 存入你的基本信息,在zhangsan.txt文件中## 显示你的基本信息## 统计zhangsan.txt含有good的文本数
(模拟菜单选择实现)## 存入你的基本信息,在zhangsan.txt文件中## 显示你的基本信息## 统计zhangsan.txt含有good的文本数
116 0
|
Python
python搜索指定类型文件&批量移动文件程序
python搜索指定类型文件&批量移动文件程序
283 0