整理的是相当的痛苦。。。
更改这三条
echo copyfol “D:\dnf”,”D:\b” >> c:\diff.vbs
echo sdir=”d:\dnf” >> c:\diff.vbs
echo ddir=”d:\b” >> c:\diff.vbs
更改其中的这三条语句。
d:\dnf 为源目录。 d:\b 目的目录(需要更新还原的目录)。
- @echo off
- del /f /q c:\diff.vbs
- echo Option Explicit >> c:\diff.vbs
-
- echo sub copyfol(sDir,Ddir) >> c:\diff.vbs
-
- echo dim fso,fol,fs,f1, objfile >> c:\diff.vbs
- echo dim arrFiles(),arrSize(),arrModified() >> c:\diff.vbs
- echo dim i >>c:\diff.vbs
- echo if right(ddir,1)^<^>"\" then ddir =ddir ^& "\" >> c:\diff.vbs
- echo if right(sdir,1)^<^>"\" then sdir =sdir ^& "\" >> c:\diff.vbs
- echo Set fso = CreateObject("Scripting.FileSystemObject") >> c:\diff.vbs
-
- echo if not (fso.FolderExists(sdir)) then >> c:\diff.vbs
- echo msgbox "找不到文件夹:" ^& sdir >> c:\diff.vbs
- echo exit sub >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo if not (fso.FolderExists(ddir)) then >> c:\diff.vbs
- echo msgbox "找不到文件夹:" ^& sdir >> c:\diff.vbs
- echo exit sub >> c:\diff.vbs
- echo end if >> c:\diff.vbs
-
-
- echo set fol=fso.GetFolder(ddir) >> c:\diff.vbs
- echo set fs=fol.files >> c:\diff.vbs
- echo i=0 >> c:\diff.vbs
- echo redim arrFiles(fs.count-1) >> c:\diff.vbs
- echo redim arrSize(fs.count-1) >> c:\diff.vbs
- echo redim arrModified(fs.count-1) >> c:\diff.vbs
- echo for each f1 in fs >> c:\diff.vbs
- echo arrfiles(i)=f1.name >> c:\diff.vbs
- echo arrSize(i)=f1.size >> c:\diff.vbs
- echo arrModified(i)=f1.DateLastModified >> c:\diff.vbs
- echo i=i+1 >> c:\diff.vbs
- echo next >> c:\diff.vbs
-
- echo set fol=fso.GetFolder(sdir) >> c:\diff.vbs
- echo set fs=fol.files >> c:\diff.vbs
- echo for i = 0 to ubound(arrfiles) >> c:\diff.vbs
-
-
- echo dim delfile >> c:\diff.vbs
- echo delfile=false >> c:\diff.vbs
- echo for each f1 in fs >> c:\diff.vbs
- echo if strcomp(arrfiles(i),f1.name,vbTextCompare)=0 then >> c:\diff.vbs
- echo if arrsize(i)^<^> f1.size or arrModified(i)^<^>f1.DateLastModified then >> c:\diff.vbs
- echo fso.copyfile f1.path, ddir ^& arrfiles(i),true >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo delfile=true '如果文件存在 >> c:\diff.vbs
- echo exit for >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
- echo if not delfile then >> c:\diff.vbs
- echo set objfile=fso.getfile(ddir ^&arrfiles(i)) >> c:\diff.vbs
- echo objfile.Delete (true) >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
-
- echo for each f1 in fs >> c:\diff.vbs
- echo delfile=false >> c:\diff.vbs
- echo for i=0 to ubound(arrfiles) >> c:\diff.vbs
- echo if strcomp(f1.name,arrfiles(i),vbtextcompare)=0 then >> c:\diff.vbs
- echo delfile=true >> c:\diff.vbs
- echo exit for >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
- echo if right (ddir,1)^<^>"\" then ddir=ddir ^&"\" >> c:\diff.vbs
- echo if not delfile then >> c:\diff.vbs
- echo f1.copy ddir,true >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
-
- echo dim fols >> c:\diff.vbs
- echo set fol=Fso.GetFolder(sdir) >> c:\diff.vbs
- echo set fols=fol.SubFolders >> c:\diff.vbs
- echo for each f1 in fols >> c:\diff.vbs
- echo if not (fso.FolderExists(ddir ^& f1.name)) then >> c:\diff.vbs
- echo fso.CreateFolder(ddir ^& f1.name) >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo copyfol sdir ^& f1.name ,ddir ^& f1.name >> c:\diff.vbs
- echo next >> c:\diff.vbs
- echo end sub >> c:\diff.vbs
-
-
- echo copyfol "D:\dnf","D:\b" >> c:\diff.vbs
-
- echo dim sdir,ddir >> c:\diff.vbs
- echo '源目录 >> c:\diff.vbs
- echo sdir="d:\dnf" >> c:\diff.vbs
- echo '目的目录 >> c:\diff.vbs
- echo ddir="d:\b" >> c:\diff.vbs
- echo function comparefile(sdir,ddir) >> c:\diff.vbs
- echo dim Fso,dFol,dfs,sf1,f1 >> c:\diff.vbs
- echo set Fso=CreateObject("Scripting.FileSystemObject") >> c:\diff.vbs
- echo if not(Fso.folderexists(sdir)) then >> c:\diff.vbs
- echo msgbox chr(34) ^&sdir ^&chr(34) ^&"文件夹不存在,请确认!",64 >> c:\diff.vbs
- echo exit function >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo if not(Fso.folderexists(ddir)) then >> c:\diff.vbs
- echo msgbox chr(34) ^&ddir ^&"""文件夹不存在,请确认!",64 >> c:\diff.vbs
- echo exit function >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo if right(sdir,1)^<^>"\" then sdir=sdir ^&"\" >> c:\diff.vbs
- echo set dFol=fso.getfolder(ddir) >> c:\diff.vbs
- echo set dfs=dfol.files >> c:\diff.vbs
- echo for each f1 in dfs >> c:\diff.vbs
- echo if fso.fileexists(sdir ^& f1.name) then >> c:\diff.vbs
- echo set sf1=fso.GetFile(sdir ^& f1.name) >> c:\diff.vbs
- echo if f1.DateLastModified ^<^>sf1.DateLastModified or f1.size^<^>sf1.size then >> c:\diff.vbs
- echo f1.delete >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo else >> c:\diff.vbs
- echo f1.Delete(true) >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
- echo dim fols >> c:\diff.vbs
- echo set fols=dfol.subfolders >> c:\diff.vbs
- echo for each f1 in fols >> c:\diff.vbs
- echo if not fso.folderexists(sdir ^&f1.name) then >> c:\diff.vbs
- echo f1.delete true >> c:\diff.vbs
- echo else >> c:\diff.vbs
- echo comparefile sdir ^& f1.name,f1.path >> c:\diff.vbs
- echo end if >> c:\diff.vbs
- echo next >> c:\diff.vbs
- echo end function >> c:\diff.vbs
- echo comparefile sdir,ddir >> c:\diff.vbs
-
- start c:\diff.vbs
@echo off
del /f /q c:\diff.vbs
echo Option Explicit >> c:\diff.vbs
echo sub copyfol(sDir,Ddir) >> c:\diff.vbs
echo dim fso,fol,fs,f1, objfile >> c:\diff.vbs
echo dim arrFiles(),arrSize(),arrModified() >> c:\diff.vbs
echo dim i >>c:\diff.vbs
echo if right(ddir,1)^<^>“\” then ddir =ddir ^& “\” >> c:\diff.vbs
echo if right(sdir,1)^<^>“\” then sdir =sdir ^& “\” >> c:\diff.vbs
echo Set fso = CreateObject(“Scripting.FileSystemObject”) >> c:\diff.vbs
echo if not (fso.FolderExists(sdir)) then >> c:\diff.vbs
echo msgbox “找不到文件夹:” ^& sdir >> c:\diff.vbs
echo exit sub >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo if not (fso.FolderExists(ddir)) then >> c:\diff.vbs
echo msgbox “找不到文件夹:” ^& sdir >> c:\diff.vbs
echo exit sub >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo set fol=fso.GetFolder(ddir) >> c:\diff.vbs
echo set fs=fol.files >> c:\diff.vbs
echo i=0 >> c:\diff.vbs
echo redim arrFiles(fs.count-1) >> c:\diff.vbs
echo redim arrSize(fs.count-1) >> c:\diff.vbs
echo redim arrModified(fs.count-1) >> c:\diff.vbs
echo for each f1 in fs >> c:\diff.vbs
echo arrfiles(i)=f1.name >> c:\diff.vbs
echo arrSize(i)=f1.size >> c:\diff.vbs
echo arrModified(i)=f1.DateLastModified >> c:\diff.vbs
echo i=i+1 >> c:\diff.vbs
echo next >> c:\diff.vbs
echo set fol=fso.GetFolder(sdir) >> c:\diff.vbs
echo set fs=fol.files >> c:\diff.vbs
echo for i = 0 to ubound(arrfiles) >> c:\diff.vbs
echo dim delfile >> c:\diff.vbs
echo delfile=false >> c:\diff.vbs
echo for each f1 in fs >> c:\diff.vbs
echo if strcomp(arrfiles(i),f1.name,vbTextCompare)=0 then >> c:\diff.vbs
echo if arrsize(i)^<^> f1.size or arrModified(i)^<^>f1.DateLastModified then >> c:\diff.vbs
echo fso.copyfile f1.path, ddir ^& arrfiles(i),true >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo delfile=true ‘如果文件存在 >> c:\diff.vbs
echo exit for >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo if not delfile then >> c:\diff.vbs
echo set objfile=fso.getfile(ddir ^&arrfiles(i)) >> c:\diff.vbs
echo objfile.Delete (true) >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo for each f1 in fs >> c:\diff.vbs
echo delfile=false >> c:\diff.vbs
echo for i=0 to ubound(arrfiles) >> c:\diff.vbs
echo if strcomp(f1.name,arrfiles(i),vbtextcompare)=0 then >> c:\diff.vbs
echo delfile=true >> c:\diff.vbs
echo exit for >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo if right (ddir,1)^<^>“\” then ddir=ddir ^&”\” >> c:\diff.vbs
echo if not delfile then >> c:\diff.vbs
echo f1.copy ddir,true >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo dim fols >> c:\diff.vbs
echo set fol=Fso.GetFolder(sdir) >> c:\diff.vbs
echo set fols=fol.SubFolders >> c:\diff.vbs
echo for each f1 in fols >> c:\diff.vbs
echo if not (fso.FolderExists(ddir ^& f1.name)) then >> c:\diff.vbs
echo fso.CreateFolder(ddir ^& f1.name) >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo copyfol sdir ^& f1.name ,ddir ^& f1.name >> c:\diff.vbs
echo next >> c:\diff.vbs
echo end sub >> c:\diff.vbs
echo copyfol “D:\dnf”,”D:\b” >> c:\diff.vbs
echo dim sdir,ddir >> c:\diff.vbs
echo ‘源目录 >> c:\diff.vbs
echo sdir=”d:\dnf” >> c:\diff.vbs
echo ‘目的目录 >> c:\diff.vbs
echo ddir=”d:\b” >> c:\diff.vbs
echo function comparefile(sdir,ddir) >> c:\diff.vbs
echo dim Fso,dFol,dfs,sf1,f1 >> c:\diff.vbs
echo set Fso=CreateObject(“Scripting.FileSystemObject”) >> c:\diff.vbs
echo if not(Fso.folderexists(sdir)) then >> c:\diff.vbs
echo msgbox chr(34) ^&sdir ^&chr(34) ^&”文件夹不存在,请确认!”,64 >> c:\diff.vbs
echo exit function >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo if not(Fso.folderexists(ddir)) then >> c:\diff.vbs
echo msgbox chr(34) ^&ddir ^&”"”文件夹不存在,请确认!”,64 >> c:\diff.vbs
echo exit function >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo if right(sdir,1)^<^>“\” then sdir=sdir ^&”\” >> c:\diff.vbs
echo set dFol=fso.getfolder(ddir) >> c:\diff.vbs
echo set dfs=dfol.files >> c:\diff.vbs
echo for each f1 in dfs >> c:\diff.vbs
echo if fso.fileexists(sdir ^& f1.name) then >> c:\diff.vbs
echo set sf1=fso.GetFile(sdir ^& f1.name) >> c:\diff.vbs
echo if f1.DateLastModified ^<^>sf1.DateLastModified or >> c:\diff.vbs
f1.size^<^>sf1.size echo then >> c:\diff.vbs
echo f1.delete >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo else >> c:\diff.vbs
echo f1.Delete(true) >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo dim fols >> c:\diff.vbs
echo set fols=dfol.subfolders >> c:\diff.vbs
echo for each f1 in fols >> c:\diff.vbs
echo if not fso.folderexists(sdir ^&f1.name) then >> c:\diff.vbs
echo f1.delete true >> c:\diff.vbs
echo else >> c:\diff.vbs
echo comparefile sdir ^& f1.name,f1.path >> c:\diff.vbs
echo end if >> c:\diff.vbs
echo next >> c:\diff.vbs
echo end function >> c:\diff.vbs
echo comparefile sdir,ddir >> c:\diff.vbs