vbs实现只复制比目标文件更新的文件
前几天写了一个(bat+xcopy实现只复制比目标文件更新的文件)还是出现为空的情况,这里特加些功能,参考很多网站的文章,感谢百度的结果很给力。
先来个bat版的
@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
还有日志功能,当前bat下也可以的。需要的可以自己扩展下。
积木网远程文章,转载请注明出处。
vbs复制文件夹的实现代码
需要实现一个复制文件夹的功能,网上找到相关代码,并做了改进,vbs脚本如下Dimfso,CopyCountSetfso=CreateObject("Scripting.FileSystemObject")CopyCount=CopyCount+XCopy(fso,
VBS文本文件操作实现代码
对于文件的操作,例如:生成一个或者打开一个或者删除一个.txt格式文件。虽然官方的FILE插件提供了一些基本功能,但功能不多。你并不需要理解什
获得文件夹大小的VBS代码
'----------------------'获得文件夹的大小'Author=baiyang'Version=1.0'Date=09.08.08'----------------------OptionExplicitOnErrorResumeNextDimobjFSO,objLocalFolder,strArg,longLocalFolderSize,strSi