国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

vbs實現只復制比目標文件更新的文件

2020-07-26 11:47:23
字體:
來源:轉載
供稿:網友
因為網站需要頻繁的更新首頁,有時候使用cdn經常導致首頁正在生成內容的時候同步數據(可能是沖突,經常導致首頁是空的),這就想了先生成一個不是首頁的index2.htm然后再復制一遍為index.htm,這樣index2的頻繁讀寫也沒問題了。所以先判斷index2.htm不是空的時候才復制,而且必須是比index.htm更新的時候才復制。這樣就需要一些腳本的支持了。

前幾天寫了一個(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下也可以的。需要的可以自己擴展下。

武林網遠程文章,轉載請注明出處。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建瓯市| 巩留县| 会泽县| 嵊泗县| 泰安市| 西平县| 洛南县| 曲阜市| 酉阳| 上虞市| 广饶县| 赞皇县| 张北县| 定州市| 精河县| 建平县| 高阳县| 巩留县| 舞阳县| 扬州市| 宝清县| 康平县| 高清| 阿克| 秦皇岛市| 林周县| 张家界市| 尤溪县| 碌曲县| 许昌县| 腾冲县| 马公市| 芮城县| 黑河市| 荆州市| 宁海县| 淮阳县| 皋兰县| 伊宁县| 阿克苏市| 苏尼特右旗|