|
Answer» Hi, Ive found that most backup software and the file they create very cumbersome. Creating my first bat file to backup desired files directly, see attached.
I'm getting Invalid # of parameters error. Seems I need HELP with spaces and quotation marks in my backnow variable. Any help getting to file to run, or with bat file suggestions in general, would be greatly appreciated.
Note - will be USED as a scheduled task on a Win XP SP3 machine.
----- Backup User Data XP.bat
echo on cd c:\
rem set variables set databkup=d:\backup\"Scheduled Backup Folder" set backnow=Currrent Backup\%Username%" "%date%" Backup" set backold="Older Backup"
rem Move last backup to Older Backup folder rmdir %databkup%\%backold% /s /q xcopy %databkup%\"Current Backup"\* %databkup%\%backold% /s /h /c
rem Backup current My Documents, Desktop and Favorites rmdir %databack%\"Current Backup" /s /q xcopy %USERPROFILE%\"My Documents" %databkup%\"%backnow%" /s /h /c xcopy %USERPROFILE%\Desktop\ %databkup%\%backnow% /s /h /c xcopy %USERPROFILE%\Favorites\ %databkup%\%backnow% /s /h /c
echo %backnow% Complete
pause
[recovering disk space - old attachment deleted by admin]try this
Code: [Select]echo off cd c:\
rem set variables set databkup=d:\backup\Scheduled Backup Folder set backnow=Currrent Backup\%Username% %date% Backup set backold=Older Backup
rem Move last backup to Older Backup folder rmdir "%databkup%\%backold%" /s /q xcopy "%databkup%\Current Backup\*" "%databkup%\%backold%" /s /h /c
rem Backup current My Documents, Desktop and Favorites rmdir "%databack%\Current Backup" /s /q xcopy "%USERPROFILE%\My Documents" "%databkup%\"%backnow%" /s /h /c xcopy "%USERPROFILE%\Desktop\" "%databkup%\%backnow%" /s /h /c xcopy "%USERPROFILE%\Favorites\" "%databkup%\%backnow%" /s /h /c
echo %backnow% Complete
pause I possibly MISSED some stuff as i did this real quick (I have to go to school) And i didn't want to TEST myself becouse I didn't want to create the complete filestructure (your folders and files) to test on
edit: I turned echo off, looks prettier this wayThanks, That helped move it along. Got up to file below and seems to be working now. Still tweaking and trying to get the spaces back in the folder names.
Note - had to change date variable for dos folder name. ===== Backup User Data XP
echo on cd c:\
rem Get date variables for /f "tokens=2,3,4 delims=/ " %%a in ('DATE /T') do set date=%%a%%B%%c
rem set variables set databkup=d:\backup\ScheduledBackupFolder set backnow=CurrentBackup\%Username%%date%Backup set backold=OlderBackup
rem Move last backup to Older Backup folder rmdir "%databkup%\%backold%\" /s /q xcopy "%databkup%\CurrentBackup\*.*" "%databkup%\%backold%\*.*" /s /h /c /y
rem Backup current My Documents, Desktop and Favorites rmdir "%databkup%\CurrentBackup\" /s /q xcopy "%USERPROFILE%\My Documents\*.*" "%databkup%\%backnow%\My Documents\*.*" /s /h /c /y xcopy "%USERPROFILE%\Desktop\*.*" "%databkup%\%backnow%\Desktop\*.*" /s /h /c /y xcopy "%USERPROFILE%\Favorites\*.*" "%databkup%\%backnow%\Favorites\*.*" /s /h /c /y
echo %backnow% Complete
pauseI think I got it!!
Fully customizable bat file to backup/copy just the files and folders I want, and is able to be set as a scheduled task.
===== Backup User Data XP.bat
echo off cd c:\
rem Get date variables for /f "tokens=2,3,4 delims=/ " %%a in ('DATE /T') do set date=%%a-%%b-%%c
rem Set backup folder variables set databkup=d:\backup\Scheduled Backup Folder set backnow=Current Backup\%Username% %date%Backup set backold=Older Backup
rem Set locations to backup set backloc1=My Documents set backloc2=Desktop set backloc3=Favorites
echo. echo Move last backup to Older Backup folder rmdir "%databkup%\%backold%\" /s /q xcopy "%databkup%\Current Backup\*.*" "%databkup%\%backold%\*.*" /s /h /c /q
echo. echo Backup current %backloc1%, %backloc2%, %backloc3% rmdir "%databkup%\Current Backup\" /s /q xcopy "%USERPROFILE%\%backloc1%\*.*" "%databkup%\%backnow%\%backloc1%\*.*" /s /h /c /q xcopy "%USERPROFILE%\%backloc2%\*.*" "%databkup%\%backnow%\%backloc2%\*.*" /s /h /c /q xcopy "%USERPROFILE%\%backloc3%\*.*" "%databkup%\%backnow%\%backloc3%\*.*" /s /h /c /q
echo. echo %backnow% Complete
echo. pause
|