自定义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月前
|
搜索推荐 前端开发 程序员
如何在浏览器中搜索内容自动过滤CSDN的相关文章,一次设置永久过滤
这篇文章介绍了如何在浏览器中设置搜索时自动过滤掉CSDN的相关文章,提供了具体的浏览器设置步骤和推荐使用的搜索引擎。
如何在浏览器中搜索内容自动过滤CSDN的相关文章,一次设置永久过滤
|
10月前
|
JavaScript 前端开发
JS实现时间段过滤搜索
JS实现时间段过滤搜索
|
10月前
如何搜索[仅有1个文件]或[指定个数范围、名称、类型文件等复杂情况]的文件夹
该文介绍了使用特定工具批量搜索文件夹的教程。首先,从提供的百度网盘或蓝奏云链接下载工具。然后打开工具,切换到批量复制板块,并通过快捷键Ctrl+5进入。接着,在工具边缘触发搜索添加功能,选择要搜索的文件夹并设置过滤条件。在过滤窗口中,根据文件和文件夹的数量以及指定的后缀名(如.html)来设定条件。例如,设置条件查找仅包含1个.html文件的文件夹。应用过滤条件后开始搜索,结果将显示在界面中,可通过双击行号或右键操作来查看和管理搜索结果。通过调整过滤条件的精确度,可以更准确地找到所需内容。该方法适用于各种复杂的搜索需求,结合不同按钮和选项能实现更多功能。
|
9月前
|
Windows
修改SubVI的LabVIEW默认搜索路径
修改SubVI的LabVIEW默认搜索路径
141 0
|
11月前
|
Shell
grep 搜索当前文件夹下的所有子文件中的文件是否包含8888字符串的命令
要在当前文件夹及其所有子文件夹中的文件中搜索包含字符串 "8888" 的文件,你可以使用 grep 命令结合 -r 或 -R 选项(表示递归搜索)。这里是具体的命令: bash grep -r "8888" . 其中: -r 或 -R:递归搜索。 "8888":你要搜索的字符串。 .:表示当前目录。 这个命令会列出所有包含字符串 "8888" 的文件的名称以及匹配的行。如果你只想看到文件名,而不看具体的匹配行,可以加上 -l 选项: bash grep -rl "8888" . 这样,命令只会输出包含字符串 "8888" 的文件名。
149 1
|
11月前
|
Shell Linux
使用=~进行精确匹配shell脚本
使用=~进行精确匹配shell脚本
54 1
|
Shell Linux C++
shell脚本 | C/C++ 统计文件单词个数
shell脚本 | C/C++ 统计文件单词个数
139 0
|
分布式计算
编写一个简单的程序,实现以下功能:统计文本文件中出现的单词的个数
编写一个简单的程序,实现以下功能:统计文本文件中出现的单词的个数
243 0
|
Python
python搜索指定类型文件&批量移动文件程序
python搜索指定类型文件&批量移动文件程序
312 0
|
Windows 流计算
减少搜索头文件的目录数
本文转自李云的博客:http://blog.csdn.net/hzliyun/article/details/9340843。 假设存在下图所示的项目目录结构: 如果存在如下包含头文件的代码,则大多的项目中需要通过“-I foo”和“-I bar”指明两个搜索头文件的目录。
895 0