gpt4 book ai didi

vbscript - VB 脚本 - 在目录中搜索文件

转载 作者:行者123 更新时间:2023-12-04 05:01:56 24 4
gpt4 key购买 nike

我正在尝试编写 VB 脚本(以前从未尝试过) - 我需要它来搜索文件夹 '\file001\source$' - 而在文件夹中搜索所有 'Update.exe' 文件 - 如果这是手动完成的,在 Windows 中需要很长时间!
我希望它找到的所有具有此名称的文件 - 都被复制到一个新文件夹中。

看着各种帮助论坛,我越来越困惑。

以下是我尝试过的:

Set fso = CreateObject("Scripting.FileSystemObject")
ShowSubfolders fso.GetFolder("\\file001\source$")

'文件夹名 = "\file001\source$"
'文件名 = "更新程序.exe"
Function ShowSubFolders(Folder)
For Each Subfolder in Folder.SubFolders
Wscript.Echo Subfolder.Path
ShowSubFolders Subfolder
Next
End Function

这是在文件夹中搜索,递归地通过文件夹子文件夹来查找具有此名称的所有文件。

我还对 -directory.getfiles 进行了研究。但不知道这是否是正确的方向。

作为 VB 脚本的新手,我研究并尝试使用 VB 脚本,以获得我想要的功能。如果我能得到任何帮助,我将不胜感激。

再次 - 我的目标是 - 找到给定文件夹和子文件夹中名称为 update.exe 的所有文件 - 然后将找到的这些文件复制到新文件夹中。
提前谢谢你。

最佳答案

如果您只想检查单个文件夹的内容是否存在特定文件,您可以这样做:

Set fso = CreateObject("Scripting.FileSystemObject")

foldername = "\\file001\source$"
filename = "Update.exe"

If fso.FileExists(fso.BuildPath(foldername, filename)) Then
WScript.Echo filename & " exists."
End If

如果要查看 foldername 的子文件夹同样,您需要使用类似 this 的内容递归到子文件夹中。 .您可以将上述代码示例中的检查集成到子文件夹的循环中,或者在文件夹中的文件上添加另一个循环:
Set fso = CreateObject("Scripting.FileSystemObject")

CopyUpdater fso.GetFolder("\\file001\source$")

Sub CopyUpdater(fldr)
For Each f In fldr.Files
If LCase(f.Name) = "update.exe" Then
'copy file to somewhere else
End If
Next

For Each sf In fldr.SubFolders
CopyUpdater sf
Next
End Sub

关于vbscript - VB 脚本 - 在目录中搜索文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16060072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com