Vbscript 复制文件夹中第二个最新修改的文件:需要帮助

Vbscript 复制文件夹中第二个最新修改的文件:需要帮助,vbscript,Vbscript,我遇到了麻烦,我需要在VBScript中执行以下任务。提前谢谢你的帮助 我想将第二个最新修改的文件从一个文件夹复制到另一个位置 源文件夹“Final”将包含许多子文件夹。运行脚本后,它应该检查“Final”的所有子文件夹中第二个最新修改的文件,并将其复制到目标文件夹。@user,我相信这就是您正在寻找的功能。我在Sub Find()中解决了您问题的核心。不能保证没有bug,我相信异常处理可以进一步改进 提示:有关将Microsoft权威WSH参考下载为Windows帮助文件的信息,请参阅 选项显

我遇到了麻烦,我需要在VBScript中执行以下任务。提前谢谢你的帮助

我想将第二个最新修改的文件从一个文件夹复制到另一个位置


源文件夹“Final”将包含许多子文件夹。运行脚本后,它应该检查“Final”的所有子文件夹中第二个最新修改的文件,并将其复制到目标文件夹。

@user,我相信这就是您正在寻找的功能。我在
Sub Find()
中解决了您问题的核心。不能保证没有bug,我相信异常处理可以进一步改进

提示:有关将Microsoft权威WSH参考下载为Windows帮助文件的信息,请参阅

选项显式
调暗关闭:调暗关闭=新文件查找器
oFF.RootFolder=“C:\Source\Folder”'绝对或相对路径
oFF.DestinationFolder=“C:\Copy\Folder\”必须以反斜杠结尾
出错时继续下一步
'
'查找最新和第二个最新文件。
'
走开,找到
如果有错误,那么
WScript.Echo“查找错误:&Err.Description
WScript.Quit(1)
其他的
Echo“最新文件:”&oFF.NewestFilePath
Echo“第二个最新文件:”&oFF.SecondNewestFilePath
如果结束
'
'将第二个最新文件复制到目标文件夹。
'
oFF.copysecondsnewestfiletodestination
如果有错误,那么
WScript.Echo“复制错误:&Err.Description
WScript.Quit(1)
其他的
WScript.Echo“'”和oFF.SecondNewestFilePath_
&“已将”“复制到文件夹”“&oFF.DestinationFolder&”“。”
如果结束
抵消=没有
' ============================================================
类文件查找器
'公用根文件夹
公共NewestFilePath
公共最新文件日期
Public SecondNewestFilePath
Public SecondNewestFileDate
私人货币基金组织
私人检票机
专用mDestinationFolder
私有子类_Initialize()
设置mFso=CreateObject(“Scripting.FileSystemObject”)
Me.SecondNewestFilePath=“”
Me.SecondNewestFileDate=CDate(“1970/01/01”)
Me.NewestFilePath=“”
Me.NewestFileDate=DateAdd(“s”,1,Me.SecondNewestFileDate)
端接头
私有子类_Terminate()
设置mFso=Nothing
端接头
公共属性Let RootFolder(sValue)
如果不是mFso.FolderExists(sValue),则
错误。引发vbObjectError+1,“_
“根文件夹'&S值&''不存在。”
如果结束
mRootFolder=s值
端属性
公共属性Get RootFolder()
RootFolder=mRootFolder
端属性
公共属性Let DestinationFolder(sValue)
如果不是(右(S值,1)=“\”),则
错误。引发vbObjectError+1,“_
“目标文件夹“&S值&”必须以反斜杠结尾。”
如果结束
如果不是mFso.FolderExists(sValue),则
错误。引发vbObjectError+1,“_
“目标文件夹'&S值&''不存在。”
如果结束
mDestinationFolder=s值
端属性
公共属性Get DestinationFolder()
DestinationFolder=mDestinationFolder
端属性
公共子查找()
文件夹的尺寸:文件夹集=mFso.GetFolder(RootFolder)
奥菲勒
对于oFolder.SubFolders中的每个oSubFolder
对于oSubFolder.Files中的每个文件
'
'文件比最新文件更新。
'
如果DateDiff(“s”),则为NewestFileDate_
oFile.DateLastModified)>0则
SecondNewestFilePath=NewestFilePath
SecondNewestFileDate=NewestFileDate
NewestFilePath=oFile.Path
NewestFileDate=oFile.DateLastModified
'
'文件比第二个最新文件更新。
'
ElseIf DateDiff(“s”),第二个最新文件日期_
oFile.DateLastModified)>0则
SecondNewestFilePath=oFile.Path
SecondNewestFileDate=oFile.DateLastModified
如果结束
下一个
下一个
端接头
Public Sub CopySecondNewestFileToDestination()公共子副本
mFso.CopyFile SecondNewestFilePath,DestinationFolder
端接头
末级

请告诉我们您自己做了什么以及在哪里遇到了麻烦。你现在问的方式有点像。