vbs实现只复制比目标文件更新的文件
2014-05-12来源:易贤网

代码如下:

@echo off

::每5分钟复制以下首页

for /f %%i in ('dir /b c:\index2.htm') do (

set indexdx=%%~zi

)

if %indexdx% gtr 5120 (

echo y | xcopy c:\index2.htm /d /r /k c:\index.htm

)

其中for /f %%i in ('dir /b c:\index2.htm') do (

set indexdx=%%~zi

)

是bat中获取index2.htm文件大小的。

然后通过if %indexdx% gtr 5120 (

实现判断是不是大于5120个字节

主要就是下面这个代码了功能更强,也比较简单

代码如下:

Dim fso

Set fso = CreateObject("Scripting.FileSystemObject")

set fn2=fso.GetFile("c:\index2.htm")

flsize2=fn2.size

fldate2=fn2.datelastmodified

set fn=fso.GetFile("c:\index.htm")

flsize1=fn.size

fldate1=fn.datelastmodified

If fso.FileExists("c:\index2.htm") and flsize2>50000 and fldate2>fldate1 Then

fso.getfile("c:\index2.htm").copy("c:\index.htm")

if err.number=0 then WriteHistory "成功"&now(),"log.txt"

end if

Sub WriteHistory(hisChars, path)

Const ForReading = 1, ForAppending = 8

Dim fso, f

Set fso = CreateObject("Scripting.FileSystemObject")

Set f = fso.OpenTextFile(path, ForAppending, True)

f.WriteLine hisChars

f.Close

End Sub

更多信息请查看IT技术专栏

推荐信息