Logging 使用路径-VBScript创建复制文件的日志文件

Logging 使用路径-VBScript创建复制文件的日志文件,logging,vbscript,Logging,Vbscript,下面是我正在使用的代码。 我正在将文件和子文件夹从一个目录复制到网络共享,然后从源目录中删除所有文件和子文件夹 我想记录,文件复制(路径),用户名,日期和时间。 下面的代码对于复制和删除都很有效,我只是很难理解如何添加日志。我是个彻头彻尾的傻瓜,请容忍我。 我还想指出日志将在何处创建(本地计算机),并且日志将需要附加 Dim objShell Set objShell = Wscript.CreateObject("WScript.Shell") objshell.run "cmd /C ro

下面是我正在使用的代码。 我正在将文件和子文件夹从一个目录复制到网络共享,然后从源目录中删除所有文件和子文件夹

我想记录,文件复制(路径),用户名,日期和时间。 下面的代码对于复制和删除都很有效,我只是很难理解如何添加日志。我是个彻头彻尾的傻瓜,请容忍我。 我还想指出日志将在何处创建(本地计算机),并且日志将需要附加

Dim objShell
Set objShell = Wscript.CreateObject("WScript.Shell")

objshell.run "cmd /C robocopy J:\TestData\ J:\PushDataScript\Versa\ /move /e /log:J:\PushData.log"


'Set fso = CreateObject("Scripting.FileSystemObject")
'Set folder = fso.GetFolder("J:\SourcePath\")

' delete all files in root folder
'for each f in folder.Files
'On Error Resume Next
'name = f.name
'f.Delete True
'On Error GoTo 0
'Next

' delete all subfolders and files 
'For Each f In folder.SubFolders
'On Error Resume Next
'name = f.name
'f.Delete True
'On Error GoTo 0
'Next

日志是否需要逐项列出每个复制对象的时间戳,还是只需要记录作业已运行,并且每次运行都有一个条目/时间戳


如果您只需要将所有这些活动记录为一个作业,那么您可以从命令shell中运行xcopy切换到使用.MoveFolder方法。

使用
robocopy

robocopy "J:\SourcePath" "\\DestPath\Test" /move /e /log:"C:\path\to\your.log"

您需要记录什么用户名和日期/时间?运行脚本的用户和脚本运行的时间戳?后者已被
robocopy
记录,前者您需要自己添加。

我需要它告诉我复制了哪些文件(带路径),复制文件的时间和日期。我真的不需要用户名。此脚本将作为任务在服务器上每5分钟运行一次。错误将不会被看到,因此需要一个记录哪些文件被复制以及何时需要的日志。希望这能回答你的问题。谢谢。我用你的台词更新了我的问题。日志已经足够了,可以了。这也会复制“testdata”源文件夹中的文件,但会删除“testdata”源文件夹。我需要源文件夹留下来,里面的所有东西都要走。你现在能帮忙吗?否则,一切似乎都正常。请参阅我的问题,了解我下载的代码。如果无法简单地重新创建源文件夹,可以将
/move
更改为
/mov
,并使用VBScript代码删除源文件夹中的子文件夹。谢谢。你说得对,我可以让它重新创建文件夹。我确实尝试了使用copy命令的robocy,实际上效果很好……我想我会使用vbscript部分来允许删除dir和文件,现在的问题是,似乎在cmd运行之后,vbscript会在写入日志之前删除文件和文件夹。你们知道vbscript等待复制完成的一种快速方法吗?不管怎样,我想我知道了,在cmd行末尾加上,1,true。