用vbs将本地文件替换为在文件服务器上找到的新版本
作者 佚名
来源 ASP编程
浏览
发布时间 2013-07-09
问: 您好,脚本专家!如何将本地文件的修改日期与文件服务器上的副本进行比较,并且,如果本地文件的版本更旧,将其替换为文件服务器上的版本? --DC 答: 您好,DC。让我们想想,您是想将某些旧的东西替换为新的。不知道为什么,这让我们感到很不安。 嗯,并不是因为脚本专家正在变老,这得提醒您,我们没有。毕竟,膝盖和后背就应该是这么吱吱作响的;不然怎么知道它们在发挥作用呢?!? 注意:据说,当爱斯基摩人老得不中用的时候,他们会被抛弃在大块浮冰上任其自生自灭。幸好脚本专家都不是爱斯基摩人,而我们每天都要穿戴好外衣、手套和长统帽上班(包括夏天)。以防万一。 不过比起过时的脚本专家来说,您可能更关心过时的文件,是吧?下面这个脚本将替换本地文件C:\Scripts\Test.txt(如果此文件正好比其在服务器atl-fs-01上的副本更旧): 复制代码 代码如下: ConstOverwriteExisting=TRUE SetobjFSO=CreateObject("Scripting.FileSystemObject") SetobjLocalFile=objFSO.GetFile("c:\scripts\test.txt") dtmLocalDate=objLocalFile.DateLastModified SetobjServerFile=objFSO.GetFile("\\atl-fs-01\public\test.txt") dtmServerDate=objServerFile.DateLastModified IfdtmLocalDate<dtmServerDateThen objFSO.CopyFileobjServerFile.Path,objLocalFile.Path,OverwriteExisting EndIf 说到FileSystemObject,我们在此脚本的下一行创建此对象(Scripting.FileSystemObject)的一个实例。然后,我们使用以下两行代码绑定到我们的第一个文件(C:\Scripts\Test.txt),并将此文件的上次修改日期(DateLastModified属性)存储在名为dtmLocalDate的变量中: SetobjLocalFile=objFSO.GetFile("c:\scripts\test.txt") dtmLocalDate=objLocalFile.DateLastModified 然后,通过创建对服务器版本Test.txt的对象引用重复此过程。请注意,此处我们使用的变量名称不同:本地文件的对象引用存储在objLocalFile中,服务器文件的对象引用存储在objServerFile中。不用说,我们还使用了不同的变量(dtmServerDate)来存储此上次修改日期: SetobjServerFile=objFSO.GetFile("\\atl-fs-01\public\test.txt") dtmServerDate=objServerFile.DateLastModified 仍在看吗?下一步我们需要确定本地文件是否比服务器文件更旧。下面这行代码就用来解决这个问题: IfdtmLocalDate<dtmServerDateThen 别被这的语法搞糊涂了。我们很容易假定旧文件的日期应该大于新文件。但实际上日期不是这么处理的。假定“文件A”的修改日期为2/1/2006,“文件B”的修改日期为2/15/2006。“文件A”比较旧,这意味着“文件A”的修改日期小于(即,产生早于)“文件B”。 那么如果本地文件比其服务器副本更旧,如何将本地文件替换为服务器上找到的副本?方法如下: objFSO.CopyFileobjServerFile.Path,objLocalFile.Path,OverwriteExisting 正如您看到的,我们要做的就是调用CopyFile方法并向其传递三个参数: ?我们想要复制的文件(即,服务器上找到的Test.txt版本)的路径。 ?我们想要将此文件复制到的路径。在本例中,即为本地文件的路径。 ?常量OverwriteExisting,它用来告诉脚本继续进行,并使用从服务器复制的版本替换本地文件。 至此您已实现了您的目的。然而,请记住,此脚本仅适用于旧文件。您不能使用它来替换,嗯,老脚本专家。(当然,倒不是有人梦想过替换脚本专家。不过,还是以防万一...) |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 病毒专杀VBS模块下一篇: 用vbs记录屏幕保护程序的开始时间和结束时间
关于用vbs将本地文件替换为在文件服务器上找到的新版本的所有评论