Gällande .cmd filer och xcopy

Avdelningen för programmering, nätverk samt alternativa OS.
Post Reply
User avatar
Spixx
Posts: 1613
Joined: 2004-03-20 16:47:34
Contact:

Gällande .cmd filer och xcopy

Post by Spixx »

Hejsan, jag har gjor ett litet mini-script för att kunna göra snabba backups på vissa filer/mappar på min vista maskin. Det jag egentligen vill veta är hur jag gör detta på ett enklare sätt (om det finnes) (1) samt fråga er vad ni tycker om det/ har några förslag till förbättringar (2). Dessutom undrar jag hur och ifall man kan be användaren att skriva i tex: e (som drive) så att man slipper denna fasta (d:\ i mitt fall) bokstav. Går det att på ett enkelt sätt lägga till att användaren väljer vilken typ av backup tex, tryck A för automatisk b för att ta full backup osv osv?

Code: Select all

@ECHO OFF
TITLE Backup and fix tool
ECHO ****************************************************
ECHO *            Backup Tool Version 0.0.5a            *
ECHO ****************************************************
ECHO.
ECHO     Please note that we do NOT give ANY warranty 
ECHO                 That this will work!
ECHO                    ONLY FOR VISTA!
ECHO     Press CTRL+C to end the copying at any time
ECHO.
ECHO ****************************************************
PAUSE
CLS

ECHO ****************************************************
ECHO.
ECHO Copying files from folder %username%\documents\
ECHO.
ECHO ****************************************************
XCOPY c:\users\%username%\documents d:\backup\%date%\documents\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab
if errorlevel 0 goto next 
ECHO.

:next
ECHO ****************************************************
ECHO.
ECHO Copying files from folder %username%\pictures\
ECHO.
ECHO ****************************************************
XCOPY c:\users\%username%\pictures d:\backup\%date%\pictures\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next2
ECHO.
PAUSE

:next2
ECHO ****************************************************
ECHO.
ECHO Copying files from folder %username%\sendto\
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Roaming\Microsoft\Windows\SendTo d:\backup\%date%\sendto\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next3 
ECHO.
PAUSE

:next3
ECHO ****************************************************
ECHO.
ECHO Copying files from folder %username%\Favorites\
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\Favorites d:\backup\%date%\favorites\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next4 
ECHO.
PAUSE

:next4
ECHO ****************************************************
ECHO.
ECHO Copying files from folder %username%\Desktop\
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\Desktop d:\backup\%date%\desktop\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next5 
ECHO.
PAUSE

:next5
ECHO ****************************************************
ECHO.
ECHO Backing up your Mozilla folder (if any)
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Roaming\Mozilla d:\backup\%date%\Mozzila\roaming  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next6 
ECHO.
PAUSE

:next6
ECHO ****************************************************
ECHO.
ECHO Backing up your hamachi folder (if any)
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Roaming\Hamachi d:\backup\%date%\Hamachi\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next7 
ECHO.
PAUSE

:next7
ECHO ****************************************************
ECHO.
ECHO Backing up your uTorrent folder (if any)
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Roaming\uTorrent d:\backup\%date%\uTorrent\  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next8 
ECHO.
PAUSE

:next8
ECHO ****************************************************
ECHO.
ECHO Backing up your Mozzila (bookmarks) folder (if any)
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Local\Mozilla d:\backup\%date%\Mozzila\local  /s /e /v /i /z
if errorlevel 4 goto lomem 
if errorlevel 2 goto usab 
if errorlevel 0 goto next9
ECHO.
PAUSE

:next9
ECHO ****************************************************
ECHO.
ECHO Backing up your Filezilla folder (if any)
ECHO.
ECHO ****************************************************
XCOPY C:\Users\%username%\AppData\Roaming\FileZilla d:\backup\%date%\FileZilla\  /s /e /v /i /z
if errorlevel 0 goto success
ECHO.
PAUSE

REM Start the LOW MEMORY FUNCTION
:lomem 
CLS
ECHO ****************************************************
ECHO.
ECHO The drive has insufficient free memory please make
ECHO sure that the drive has sufficient space.
ECHO.
ECHO ****************************************************
PAUSE 
GOTO fail

REM Start the USER ABORT FUNCTION
:usab
CLS
ECHO ****************************************************
ECHO.
ECHO User aborted the scrip please check why you did this
ECHO.
ECHO ****************************************************
PAUSE 
goto fail

REM Start the FAIL FUNCTION
:fail
CLS
ECHO ****************************************************
ECHO.
ECHO Failure!
ECHO The operation was unsuccessfull please check errorcode
ECHO errorlevel
ECHO.
ECHO ****************************************************
PAUSE
goto exit

REM Start the SUCCESS FUNCTION
:success
CLS
ECHO ****************************************************
ECHO.
ECHO Success!
ECHO files can now be found at d:\backup\%date%\
ECHO.
ECHO ****************************************************
PAUSE
goto exit

:exit
CLS
ECHO ****************************************************
ECHO.
ECHO Success!
ECHO files can now be found at d:\backup\%date%\
ECHO.
ECHO ****************************************************
PAUSE
EXIT
kanaljen
Posts: 2
Joined: 2008-07-29 19:48:12

Re: Gällande .cmd filer och xcopy

Post by kanaljen »

Hej,

För det första kanske du bör du överväga att använda robocopy istället, då xcopy inte rekommenderas i Vista. Du kan se det själv om du i kommandotolken skriver: xcopy /?|more

Du har säkert en anledning (eller anledningar) att använda xcopy?

Sedan kanske du kan överväga att ersätta
C:\Users\%username%\AppData\Roaming med %AppData%

Det var väl mest sånt småpill jag såg i en hast.

mvh Jakob
Post Reply