1.

Solve : Save folder with date?

Answer»

here's the code... but the question is...
what if i back-up the folder at the same date?


@ECHO OFF
echo Y | xcopy /e D:\APPS\RBA-VRSN.330\*.* C:\BACK-UP\RECENT-BK-UP\*.*>NUL
for /f "tokens=1-5 delims=/ " %%d in ("%date%") do rename "C:\BACK-UP\RECENT-BK-UP" %%e-%%f-%%g
exit



what I want is SOMETHING like this...
let's say 06-04-2010 already exist and I back-up at the same date...
then I want to rename "RECENT-BK-UP" TO 06-04-2010.a or if exist
06-04-2010.b or if exist
06-04-2010.c or if exist
06-04-2010.d and so on...

thanks in advance!

Quote from: night-rider on June 04, 2010, 09:19:05 PM


What if I back-up the folder at the same date?


@ECHO OFF
echo Y | xcopy /e D:\APPS\RBA-VRSN.330\*.* C:\BACK-UP\RECENT-BK-UP\*.*>NUL
for /f "tokens=1-5 delims=/ " %%d in ("%date%") do rename "C:\BACK-UP\RECENT-BK-UP" %%e-%%f-%%g
exit


Use a UNIQUE sequence number. A number will work better than a,b,c ...


C:\test>type nightrider.bat

Code: [Select]@ECHO OFF
setlocal enabledelayedexpansion
cd C:\test\
type c:\test\backseq.txt
SET /p backseq=<backseq.txt
echo backseq=%backseq%

xcopy c:\test\*.txt C:\backup\recent\*.*> nul

for /f "tokens=1-5 delims=/ " %%d in ("%date%") do (
set /a backseq=!backseq! + 1
echo backseq=!backseq!
md c:\backup\%%e-%%f-%%g%-!backseq!
set newdir=%%e-%%f-%%g%-!backseq!
copy c:\backup\recent\ c:\backup\!newdir!\>nul
echo Y | rd /s C:\backup\recent\
echo !backseq! > backseq.txt
)

cd c:\backup
dir
Output:

C:\test>nightrider.bat
27
backseq=27
backseq=28
C:\backup\recent\, Are you sure (Y/N)? Y
Volume in drive C has no label.
Volume Serial Number is 0652-E41D

Directory of c:\backup

06/15/2010 06:29 PM .
06/15/2010 06:29 PM ..
06/15/2010 06:14 PM 06-15-2010-23
06/15/2010 06:17 PM 06-15-2010-24
06/15/2010 06:17 PM 06-15-2010-25
06/15/2010 06:21 PM 06-15-2010-26
06/15/2010 06:22 PM 06-15-2010-27
06/15/2010 06:29 PM 06-15-2010-28
0 File(s) 0 bytes
8 Dir(s) 295,186,542,592 bytes free
C:\test>Quote from: night-rider on June 04, 2010, 09:19:05 PM
What if back-up the folder at the same date?


@ECHO OFF
echo Y | xcopy /e D:\APPS\RBA-VRSN.330\*.* C:\BACK-UP\RECENT-BK-UP\*.*>NUL
for /f "tokens=1-5 delims=/ " %%d in ("%date%") do rename "C:\BACK-UP\RECENT-BK-UP" %%e-%%f-%%g



We may also use time /t instead of sequence number


C:\test>type nnrider.bat
Code: [Select]@ECHO OFF
setlocal enabledelayedexpansion
cd C:\test\
time /t > ftime.txt
set /p ftime=<ftime.txt

set ftime=%ftime::=%
echo.%ftime%
echo ftime=%ftime%

set ftime=%ftime:~0,4%
echo ftime=%ftime%

xcopy c:\test\*.txt C:\backup\recent\*.*> nul

for /f "tokens=1-5 delims=/ " %%d in ("%date%") do (

md c:\backup\%%e-%%f-%%g%-!ftime!
set newdir=%%e-%%f-%%g%-!ftime!
copy c:\backup\recent\ c:\backup\!newdir!\>nul
echo Y | rd /s C:\backup\recent\
)

cd c:\backup
dir
Output:

C:\test>nnrider.bat
0832 AM
ftime=0832 AM
ftime=0832
C:\backup\recent\, Are you sure (Y/N)? Y
Volume in drive C has no label.
Volume Serial Number is 0652-E41D

Directory of c:\backup

06/16/2010 08:32 AM .
06/16/2010 08:32 AM ..
06/16/2010 07:45 AM 06-16-2010-0745
06/16/2010 07:52 AM 06-16-2010-0752
06/16/2010 07:54 AM 06-16-2010-0754
06/16/2010 08:05 AM 06-16-2010-0805
06/16/2010 08:08 AM 06-16-2010-0808
06/16/2010 08:24 AM 06-16-2010-0824
06/16/2010 08:26 AM 06-16-2010-0826
06/16/2010 08:32 AM 06-16-2010-0832
0 File(s) 0 bytes
10 Dir(s) 294,352,437,248 bytes free

C:\test>


Discussion

No Comment Found