@ECHO OFF TITLE MASTER BACKUP BATCH MODE CON: COLS=80 LINES=40 COLOR FC :: ************************** :: BACKUP UTILITIES :: Author: Jon Kubler :: 03-03-2009 :: ************************** :: THIS SCRIPT WILL BACKUP VITAL PROGRAM DATA FROM KEN'S LAPTOP ONTO FILESERVER\BACKUPS\KENS BACKUPS :: 3-6-2009 LAST COPY OF OUTLOOK.PST WILL BE CHANGED TO OUTLOOK.BAK BEFORE OVERWRITE. :: THIS WILL MAINTAIN ONE BACKUP COPY. :: :: You must change this files extension from txt to bat. IF "%USERNAME%" NEQ "admin" ECHO THIS PROGRAM CAN ONLY BE RAN FROM KEN'S COMPUTER & PAUSE & GOTO ENDPROGRAM SETLOCAL ENABLEEXTENSIONS SETLOCAL ENABLEDELAYEDEXPANSION ::WAIT FOR NETWORK CONNECTION SET STARTTIME=%TIME% SET /A COUNTER=0 :RETRY CLS ECHO CONNECTING TO NETWORK... SET /A COUNTER=%COUNTER%+1 ECHO ATTEMPT# %COUNTER% @ %TIME% :: PUSHD "\\Gx280\FileServer\BACKUPS\Backup Ken" > NUL PUSHD "\\DELL-GX110\TechPC-G\BACKUPS-KEN" > NUL IF %ERRORLEVEL% == 0 GOTO PATHFOUND :: WAIT LOOP SET /A DELAY=1000 :DELAY SET /A DELAY=%DELAY%-1 IF %DELAY% GTR 0 GOTO DELAY IF %COUNTER% LEQ 10 GOTO RETRY :: DATABASE PATH WAS NOT FOUND CLS MSG /V %USERNAME% WARNING. BACKUPS NOT CREATED! ECHO %DATE% %STARTTIME% ECHO ENDED CHECK AT %TIME% ECHO SERVER COULD NOT BE FOUND. ECHO PLEASE VERIFY THAT THE SERVER IS ON. CD "D:\Users\admin\Documents\Backup Batch Files" ECHO %DATE% %STARTTIME% ENDED CHECK AT %TIME% *** SERVER COULD NOT BE FOUND. ***>>BACKUP.LOG PAUSE EXIT : PATHFOUND :: PARSE CURRENT DATE FROM SYSTEM FOR /f "tokens=2-4 delims=/ " %%i in ('date/t') do ( (SET Mth=%%i) (SET Dy=%%j) (SET Yr=%%k) ) :: STRIP LEADING ZERO :: (08 AND 09 ARE READ BY THE COMMAND LINE AS OCTAL) IF %Mth% EQU 01 SET/a Mth=1 IF %Mth% EQU 02 SET/a Mth=2 IF %Mth% EQU 03 SET/a Mth=3 IF %Mth% EQU 04 SET/a Mth=4 IF %Mth% EQU 05 SET/a Mth=5 IF %Mth% EQU 06 SET/a Mth=6 IF %Mth% EQU 07 SET/a Mth=7 IF %Mth% EQU 08 SET/a Mth=8 IF %Mth% EQU 09 SET/a Mth=9 IF %Dy% EQU 01 SET/a Dy=1 IF %Dy% EQU 02 SET/a Dy=2 IF %Dy% EQU 03 SET/a Dy=3 IF %Dy% EQU 04 SET/a Dy=4 IF %Dy% EQU 05 SET/a Dy=5 IF %Dy% EQU 06 SET/a Dy=6 IF %Dy% EQU 07 SET/a Dy=7 IF %Dy% EQU 08 SET/a Dy=8 IF %Dy% EQU 09 SET/a Dy=9 CLS ECHO NETWORK CONNECTED. ECHO PLEASE WAIT... ECHO BACKING UP FILES.... ::____________________________________BACKUP LIST_________________________________________________ :: COPY GENESISTbl.mdb FROM NETWORK TO LOCAL COPY "\\Gx280\fileserver\Data\Access\GENESISTbl.mdb" "D:\Users\admin\Documents\Access" :: BACKUP QUICKEN IF NOT EXIST QUICKEN_%Mth%-%Dy%-%Yr% MKDIR QUICKEN_%Mth%-%Dy%-%Yr% COPY /Y "D:\Users\admin\Documents\Quicken\KENACCT.*" QUICKEN_%Mth%-%Dy%-%Yr% COPY /Y "D:\Users\admin\Documents\Quicken\Mom.*" QUICKEN_%Mth%-%Dy%-%Yr% :: BACKUP FILEZILLA IF NOT EXIST FILEZILLA_%Mth%-%Dy%-%Yr% MKDIR FILEZILLA_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Roaming\FileZilla\*" FILEZILLA_%Mth%-%Dy%-%Yr% :: BACKUP VLC IF NOT EXIST VLC_%Mth%-%Dy%-%Yr% MKDIR VLC_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Roaming\vlc\*" VLC_%Mth%-%Dy%-%Yr% :: BACKUP NOTEPAD+ SESSIONS IF NOT EXIST NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% MKDIR NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% COPY /Y "C:\Program Files (x86)\Notepad++\sessions\*" NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% COPY /Y "C:\Users\admin\AppData\Roaming\Notepad++\*" NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% :: BACKUP ROBOFORM IF NOT EXIST ROBOFORM_%Mth%-%Dy%-%Yr% MKDIR ROBOFORM_%Mth%-%Dy%-%Yr% COPY /Y "D:\Users\admin\Documents\My RoboForm Data\Default Profile\*" ROBOFORM_%Mth%-%Dy%-%Yr% :: BACKUP WINSTEP NEXUS TOOLBAR IF NOT EXIST WINSTEP_NEXUS_%Mth%-%Dy%-%Yr% MKDIR WINSTEP_NEXUS_%Mth%-%Dy%-%Yr% COPY /Y "C:\Users\Public\Documents\Winstep\Backup\*" WINSTEP_NEXUS_%Mth%-%Dy%-%Yr% COPY /y "C:\Users\Public\Documents\Winstep\Backup\*" "D:\Users\admin\Documents\BACKUP LAPTOP\Winstep_Nexus\Backup" :: BACKUP EXPRESSION WEB V4 :: www.saffronstroke.com/2009/11/11/import-custom-code-snippets-from-ew2-to-ew3 IF NOT EXIST EXPRESSIONWEB_%Mth%-%Dy%-%Yr% MKDIR EXPRESSIONWEB_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Roaming\Microsoft\Expression\*" EXPRESSIONWEB_%Mth%-%Dy%-%Yr% :: rmdir "C:\Users\admin\AppData\Roaming\Microsoft\Expression\WebsiteCache\*" :: BACKUP IPHONE SETTINGS :: http://support.apple.com/kb/HT1766 :: Windows XP: \Documents and Settings\(username)\Application Data\Apple Computer\MobileSync\Backup\ :: Windows Vista and Windows 7: \Users\(username)\AppData\Roaming\Apple Computer\MobileSync\Backup\ IF NOT EXIST IPHONE_%Mth%-%Dy%-%Yr% MKDIR IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Apple Computer\MobileSync\Backup\*" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\Music\iTunes\iTunes Music Library.xml" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\Music\iTunes\iTunes Library.itl" IPHONE_%Mth%-%Dy%-%Yr% :Need /h to copy hidden file XCOPY /H/S/Y "D:\Users\admin\Documents\Music\iTunes\.iTunes Preferences.plist" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\Music\iTunes\_iPod_Backup_Library.xml" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\Music\iTunes\Previous iTunes Libraries\*" IPHONE_%Mth%-%Dy%-%Yr% :: BACKUP WINAMP :: http://forums.winamp.com/showthread.php?threadid=158332 :: IF NOT EXIST WINAMP_%Mth%-%Dy%-%Yr% MKDIR WINAMP_%Mth%-%Dy%-%Yr% :: XCOPY /S/Y "C:\Users\admin\AppData\Winamp\*" WINAMP_%Mth%-%Dy%-%Yr% :: BACKUP SONY VEGAS AND DVD ARCHITECT SETTINGS IF NOT EXIST SONYVEGAS_%Mth%-%Dy%-%Yr% MKDIR SONYVEGAS_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Roaming\Sony\*" SONYVEGAS_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Roaming\Sony\Vegas Pro\10.0\*" SONYVEGAS_%Mth%-%Dy%-%Yr% :: BACKUP IDIMAGER V5 IF NOT EXIST IDIMAGER_%Mth%-%Dy%-%Yr% MKDIR IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Users\admin\AppData\Local\IDimager\*" IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\IdImager\CATALOG\*" IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Program Files (x86)\IDimager Products\IDimager\Templates\*" IDIMAGER_%Mth%-%Dy%-%Yr% :: BACKUP FireFox SESSION MANAGER IF NOT EXIST FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% MKDIR FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\Users\admin\Documents\FireFox Session Manager\*" FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% :: ADOBE PHOTOSHOP :: CYBERLINK POWERDIRECTOR ULTIMATE :: COREL VIDEOSTUDIO :: SNAGIT :: -------------------- FIREFOX BACK STARTS HERE ----------------------- :: BACKUP FIREFOX IF NOT EXIST FIREFOX_%Mth%-%Dy%-%Yr% MKDIR FIREFOX_%Mth%-%Dy%-%Yr% TASKLIST | FIND "firefox.exe" > NUL IF %ERRORLEVEL% == 0 ( ECHO. ECHO PLEASE CLOSE FIREFOX BEFORE YOU CONTINUE! ECHO. MSG /TIME:5 %USERNAME% PLEASE CLOSE FIREFOX NOW! PAUSE ) :: ENDIF TASKLIST | FIND "firefox.exe" > NUL IF %ERRORLEVEL% == 0 ( ECHO. ECHO FIREFOX WAS NOT BACKED UP! ECHO. MSG /TIME:5 %USERNAME% FIREFOX WAS NOT BACKED UP. ECHO %DATE% %TIME% FIREFOX WAS NOT BACKED UP >>"D:\USER SYSTEM FILES\Ken\My Documents\Backup Batch Files\BACKUP.LOG" GOTO OUTLOOK ) :: ENDIF ECHO COPYING FIREFOX NOW, PLEASE WAIT... :: http://kb.mozillazine.org/Firefox_:_Tips_:_Backup XCOPY /S/Y "C:\Users\admin\AppData\Local\Mozilla\Firefox\Profiles\*" FIREFOX_%Mth%-%Dy%-%Yr% :: -------------------- FIREFOX BACK ENDS HERE ----------------------- :: -------------------- OUTLOOK EXPRESS BACKUP STARTS HERE ----------------------- :: ECHO COPYING OUTLOOK EXPRESS NOW, PLEASE WAIT... :: :: IF NOT EXIST OUTLOOK_EXPRESS_%Mth%-%Dy%-%Yr% MKDIR OUTLOOK_EXPRESS_%Mth%-%Dy%-%Yr% :: XCOPY /S/Y "D:\Users\admin\Outlook Express\*" OUTLOOK_EXPRESS_%Mth%-%Dy%-%Yr% :: -------------------- OUTLOOK EXPRESS BACKUP ENDS HERE ----------------------- :: -------------------- OUTLOOK BACKUP STARTS HERE ----------------------- ::OUTLOOK TASKLIST | FIND "OUTLOOK.EXE" > NUL IF %ERRORLEVEL% == 0 ( ECHO. ECHO PLEASE CLOSE OUTLOOK BEFORE YOU CONTINUE! ECHO. MSG /TIME:5 %USERNAME% PLEASE CLOSE OUTLOOK NOW! PAUSE ) :: ENDIF TASKLIST | FIND "OUTLOOK.EXE" > NUL IF %ERRORLEVEL% == 0 ( ECHO. ECHO OUTLOOK WAS NOT COPIED! ECHO. MSG /TIME:5 %USERNAME% OUTLOOK WAS NOT COPIED. ECHO %DATE% %TIME% OUTLOOK WAS NOT COPIED >>"D:\USER SYSTEM FILES\Ken\My Documents\Backup Batch Files\BACKUP.LOG" GOTO CLEANUP ) :: ENDIF :: LAST COPY OF OUTLOOK.PST WILL BE RENAMED TO OUTLOOK.BAK BEFORE OVERWRITE. DEL /Q OUTLOOK.BAK RENAME OUTLOOK.PST OUTLOOK.BAK ECHO COPYING OUTLOOK NOW, PLEASE WAIT... COPY /Y "D:\Users\admin\Outlook\Outlook.pst" OUTLOOK.PST :: -------------------- OUTLOOK BACKUP ENDS HERE ----------------------- ::________________________________________________________________________________________________ :CLEANUP :: DELETE ALL FOLDER BACKUPS OLDER THAN 2 Weeks [FORMAT NAME_MONTH-DAY-YEAR] SET /a LastYr=%Yr%-1 SET /a LastMth=%Mth%-1 SET /a EndDy=%Dy%+17 SET /a TwoWeeksAgo=%Dy%-14 IF EXIST FOLDERLIST.TXT DEL /Q FOLDERLIST.TXT :: OUTPUT ALL FOLDERS TO FOLDERLIST.TXT DIR /a:d /b > FOLDERLIST.TXT :: EXTRACT FOLDER DELETION LIST [PARSE NAME FROM DATE] FOR /F "tokens=1-2 delims=_" %%G IN (FOLDERLIST.TXT) DO ( IF "%%H" EQU "%Mth%-%Dy%-%Yr%" ( :: CASE 1 - DAY OF MONTH GEQ 15 IF %Dy% GEQ 15 ( ECHO %%G - CASE 1 DELETION :: ECHO PURGE OLD FOLDERS FROM DECEMBER LAST YEAR FOR /L %%l in (1,1,31) DO IF EXIST %%G_12-%%l-%LastYr% RMDIR /Q/S %%G_12-%%l-%LastYr% :: PURGE OLD FOLDERS FROM PREVIOUS MONTH FOR /L %%l in (1,1,31) DO IF EXIST %%G_%LastMth%-%%l-%Yr% RMDIR /Q/S %%G_%LastMth%-%%l-%Yr% :: PURGE OLD FOLDERS FROM CURRENT MONTH FOR /L %%l in (1,1,%TwoWeeksAgo%) DO IF EXIST %%G_%Mth%-%%l-%Yr% RMDIR /Q/S %%G_%Mth%-%%l-%Yr% ) :: CASE 2 - DAY OF MONTH LEQ 14 AND MONTH GEQ 2 IF %Dy% LEQ 14 IF %Mth% GEQ 2 ( ECHO %%G - CASE 2 DELETION :: PURGE OLD FOLDERS FROM PREVIOUS MONTH CURRENT YEAR FOR /L %%l in (1,1,%EndDy%) DO IF EXIST %%G_%LastMth%-%%l-%Yr% RMDIR /Q/S %%G_%LastMth%-%%l-%Yr% ) :: CASE 3 - DAY OF MONTH LEQ 14 AND MONTH EQU 1 IF %Dy% LEQ 14 IF %Mth% EQU 1 ( ECHO %%G - CASE 3 DELETION :: ECHO PURGE OLD FOLDERS FROM DECEMBER LAST YEAR FOR /L %%l in (1,1,%EndDy%) DO IF EXIST %%G_12-%%l-%LastYr% RMDIR /Q/S %%G_12-%%l-%LastYr% ) ) ) ECHO %DATE% %TIME% BACKUPS SUCESSFULLY CREATED>>"D:\Users\admin\Documents\Backup Batch Files\BACKUP.LOG" :ENDPROGRAM EXIT