作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试向脚本中添加一些内容,以便让我知道我复制的文件是否已被完全复制。
基本上,我要压缩一堆文件,然后将它们发送到网络上的映射驱动器。然后,一旦文件被成功复制,我将脚本删除原始位置的文件。该脚本可以正常工作,但是我只需要添加一些错误处理,这将使我知道复制是否成功完成。
我从来没有在vbscript中使用过任何错误处理,因为我只用了大约一周的时间,所以我们将不胜感激任何帮助。让我知道是否需要进一步解释。我的脚本可以在下面找到:
Option Explicit
Dim sDirectoryPath, sDestinationPath, sOutputFilename, Shell, sFileExt, sFilePrefix
shell = WScript.CreateObject("WScript.Shell")
sDirectoryPath = "C:\Testscripts\"
sDestinationPath = "C:\Script\files\outzips\"
sOutputFilename = shell.ExpandEnvironmentStrings("%COMPUTERNAME%")
sFileExt = ".evtx"
sFilePrefix = "Archive*"
Dim Command, RetVal
Dim d : d = Date()
Dim dateStr : dateStr = Year(d) & "-" & Right("00" & Month(d), 2) & "-" & Right("00" & Day(d), 2)
Dim t : t = Time()
Dim timeStr: timeStr = Hour(t) & "-" & Right("00" & Minute(t), 2) & "-" & Right("00" & Second(t), 2)
Command = """C:\Program Files\7-zip\7z.exe"" a " & sDestinationPath & sOutputFilename & "-" & dateStr & "-" & timeStr & ".zip " & sDirectoryPath & sFilePrefix & sFileExt
RetVal = Shell.Run(Command,0,true)
Wscript.Sleep 2000
Dim objFso
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\script\files\outzips\*.zip" , "G:\CopyTestFolder\"
If err.Number <> 0 Then
WScript.Echo "An error occured copying this file, re-attempt copy"
Else
WScript.Echo "No errors occured, copy successful"
End If
On Error GoTo 0
objFSO.DeleteFolder("C:\Script")
objFSO.DeleteFile("C:\Testscripts\Archive*.evtx")
最佳答案
使用7-zip上的“t”命令来验证完整性。如果“0”正常,则错误。
例如:
Set myshell = WScript.CreateObject("WScript.Shell")
Dim cmd, result
cmd = """C:\Program Files\7-zip\7z.exe"" t C:\NOT_a__valid_zip_file.zip"
result = myshell.Run(cmd,0,true)
Wscript.Echo "Not a valid zip file: " & result
cmd = """C:\Program Files\7-zip\7z.exe"" t C:\a_valid_zip_file.zip"
result = myshell.Run(cmd,0,true)
Wscript.Echo "A valid zip file: " & result
PS> cscript.exe .\7z.vbs
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Not a valid zip file: 2
A valid zip file: 0
关于error-handling - VBscript : Verifying that a file has been completely copied/error handling,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11300070/
我是一名优秀的程序员,十分优秀!