WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Backups

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Incremental backup based on archive bit

Keywords: 	 Incremental backup based on archive bit

;Incremental backup based on archive bit
;***************************************

;Set these variables as appropriate
SourcePath="C:\"
BackupPath="D:\Backup"
LogFile="C:\Temp\BackupList.txt"

#DefineFunction DirTree(Handle,CurrentDir,SourcePath,BackupPath,TotalFiles)
   DirChange(CurrentDir)
   If StrSub(CurrentDir,StrLen(CurrentDir),1)!="\" Then CurrentDir=StrCat(CurrentDir,"\")
   aStatusBar(1,"Total files processed: %TotalFiles%",CurrentDir,1,0)
   FileList=FileItemPath("*.*")
   FileCount=ItemCount(FileList,@TAB)
   For CountF=1 To FileCount
      TotalFiles=TotalFiles+1
      File=ItemExtract(CountF,FileList,@TAB)
      FileDate=FileTimeGetEx(File,3)
      Archive=(StrSub(FileAttrGet(File),2,1)=="A") ;Check archive bit
      If Archive
         FileSz=FileSizeEx(File)/1024.0
         FileWrite(Handle,StrCat(FileDate,"  ",StrFixLeft(FileSz," ",7)," KB  ",File))
         aFileCopy(File,StrReplace(File,SourcePath,BackupPath),4) ;Backup file
         FileAttrSet(File,"a") ;Reset archive bit
      EndIf
   Next
   SubDirs=DirItemize("*.*")
   DirCount=ItemCount(SubDirs,@TAB)
   For CountD=1 To DirCount
      SubDir=ItemExtract(CountD,SubDirs,@TAB)
      FullDir=StrCat(CurrentDir,SubDir,"\")       
      TotalFiles=DirTree(Handle,FullDir,SourcePath,BackupPath,TotalFiles)
   Next
   Return TotalFiles
#EndFunction

AddExtender("Wilx34i.dll") ;WIL Extender
Terminate(!DirExist(SourcePath),"Status","Invalid source path")
Terminate(!xDriveReady(StrSub(BackupPath,1,2)),"Status","Backup drive not ava1lable")
If !DirExist(BackupPath) Then DirMake(BackupPath)
aStatusBar(0,"Initializing...","",1,0)
Handle=FileOpen(LogFile,"Write")
TotalFiles=DirTree(Handle,SourcePath,SourcePath,BackupPath,0)
FileClose(Handle)
aStatusBar(2,"","",0,0)
Message("Status","Incremental backup finished.%@CRLF%Total files checked: %TotalFiles%")
Exit




Article ID:   W15525
File Created: 2003:05:13:11:28:30
Last Updated: 2003:05:13:11:28:30