@ECHO OFF TITLE MASTER BACKUP BATCH MODE CON: COLS=80 LINES=40 COLOR FC :: ************************** :: BACKUP UTILITIES :: Author: Jon Kubler :: 03-3-2009 :: ************************** :: THIS SCRIPT WILL BACKUP VITAL PROGRAM DATA FROM KEN'S LAPTOP ONTO FILESERVER\BACKUPS\KENS BACKUPS :: 3-06-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 "Ken" 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 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:\USER SYSTEM FILES\Ken\My 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:\USER SYSTEM FILES\Ken\My Documents\Data\Access" :: BACKUP QUICKEN IF NOT EXIST QUICKEN_%Mth%-%Dy%-%Yr% MKDIR QUICKEN_%Mth%-%Dy%-%Yr% COPY /Y "D:\USER SYSTEM FILES\Ken\My Documents\Data\Quicken\KENACCT.*" QUICKEN_%Mth%-%Dy%-%Yr% COPY /Y "D:\USER SYSTEM FILES\Ken\My Documents\Data\Quicken\Mom.*" QUICKEN_%Mth%-%Dy%-%Yr% :: BACKUP JET TOOL BAR IF NOT EXIST JETTOOLBAR_%Mth%-%Dy%-%Yr% MKDIR JETTOOLBAR_%Mth%-%Dy%-%Yr% COPY /Y "C:\Documents and Settings\Ken\Application Data\COWON\JetToolBar\*" JETTOOLBAR_%Mth%-%Dy%-%Yr% COPY /y "C:\Documents and Settings\Ken\Application Data\COWON\JetToolBar\JetTB.tdb" "D:\USER SYSTEM FILES\Ken\My Documents\BACKUP LAPTOP\JetToolBar" :: BACKUP FF SESSION MANAGER IF NOT EXIST FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% MKDIR FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\FireFox Session Manager\*" FFSESSIONMANAGER_%Mth%-%Dy%-%Yr% :: BACKUP WS_FTP IF NOT EXIST WSFTP_%Mth%-%Dy%-%Yr% MKDIR WSFTP_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Documents and Settings\All Users\Application Data\Ipswitch\WS_FTP\*" WSFTP_%Mth%-%Dy%-%Yr% :: BACKUP NEWSBIN IF NOT EXIST NEWSBIN_%Mth%-%Dy%-%Yr% MKDIR NEWSBIN_%Mth%-%Dy%-%Yr% COPY /Y "C:\Documents and Settings\Ken\Application Data\Newsbin\*.nbi" NEWSBIN_%Mth%-%Dy%-%Yr% :: BACKUP NOTEPAD+ SESSIONS IF NOT EXIST NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% MKDIR NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% COPY /Y "C:\Program Files\Notepad++Unicode\sessions\*" NOTEPADSESSIONS_%Mth%-%Dy%-%Yr% :: BACKUP ROBOFORM IF NOT EXIST ROBOFORM_%Mth%-%Dy%-%Yr% MKDIR ROBOFORM_%Mth%-%Dy%-%Yr% COPY /Y "D:\USER SYSTEM FILES\Ken\My 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:\Documents and Settings\All Users\Documents\Winstep\Backup\*" WINSTEP_NEXUS_%Mth%-%Dy%-%Yr% COPY /y "C:\Documents and Settings\All Users\Documents\Winstep\Backup\*" "D:\USER SYSTEM FILES\Ken\My Documents\BACKUP LAPTOP\Winstep_Nexus\Backup" :: BACKUP EXPRESSION WEB V3 :: 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:\Documents and Settings\Ken\Application Data\Microsoft\Expression\*" EXPRESSIONWEB_%Mth%-%Dy%-%Yr% :: 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:\Documents and Settings\Ken\Application Data\Apple Computer\MobileSync\Backup\*" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\My Music\iTunes\iTunes Music Library.xml" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\My Music\iTunes\iTunes Library.itl" IPHONE_%Mth%-%Dy%-%Yr% :Need /h to copy hidden file XCOPY /H/S/Y "D:\USER SYSTEM FILES\Ken\My Documents\My Music\iTunes\.iTunes Preferences.plist" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\My Music\iTunes\_iPod_Backup_Library.xml" IPHONE_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\My 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:\Documents and Settings\Ken\Application Data\Winamp\*" WINAMP_%Mth%-%Dy%-%Yr% :: BACKUP SONY VEGAS SETTINGS IF NOT EXIST SONYVEGAS_%Mth%-%Dy%-%Yr% MKDIR SONYVEGAS_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Documents and Settings\Ken\Application Data\Sony\Vegas Pro\9.0\*" SONYVEGAS_%Mth%-%Dy%-%Yr% :: BACKUP IDIMAGER V4 IF NOT EXIST IDIMAGER_%Mth%-%Dy%-%Yr% MKDIR IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Documents and Settings\Ken\Application Data\IDimager\*" IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "D:\USER SYSTEM FILES\Ken\My Documents\IdImager\CATALOG\*" IDIMAGER_%Mth%-%Dy%-%Yr% XCOPY /S/Y "C:\Program Files\IDimager Products\IDimager\Templates\*" IDIMAGER_%Mth%-%Dy%-%Yr% :: 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:\Documents and Settings\Ken\Application Data\Mozilla\Firefox\Profiles\*" FIREFOX_%Mth%-%Dy%-%Yr% :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 ::________________________________________________________________________________________________ :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:\USER SYSTEM FILES\Ken\My Documents\Backup Batch Files\BACKUP.LOG" :ENDPROGRAM EXIT