Batch file to create a folder with name of the time.

SpiritKing

New member
Local time
4:54 AM
Messages
1
I'm trying to write a batch file that when run creates a folder named "Backup" followed by the time it was created, and then copies files to that folder.

When I run

md "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Backups\Backup %DATE%\"
xcopy /e /v /y "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Server\world" "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Backups\Backup %DATE%\"
pause

It creates a folder named the date it was created and places the folders in it. How do I make it so the folder is named the time instead of the date?
 

My Computer My Computer

At a glance

Windows 7 Home Premium 64 Bit
OS
Windows 7 Home Premium 64 Bit
you could do something like the below.
*disclaimer*: I am a fairly decent UNIX shell script programmer, but I suck at Windows programming. I did NOT test this out, but it should give you the general idea.

set SOURCEFOLDER="C:\Master"
set BACKUPTIME=%TIME%
set BACKUPFOLDER="C:\blah\Backup %BACKUPTIME%"

md "%BACKUPFOLDER%"
xcopy foo "%SOURCEFOLDER%" "%BACKUPFOLDER%"
 

My Computer My Computer

At a glance

Windows 7 Ultimate x64 SP1Intel Core i7-3960X16 GB GSkill DDR3-2133 CL9EVGA SC GTX 680
Computer Manufacturer/Model Number
Custom
OS
Windows 7 Ultimate x64 SP1
CPU
Intel Core i7-3960X
Motherboard
Intel DX79SI
Memory
16 GB GSkill DDR3-2133 CL9
Graphics Card(s)
EVGA SC GTX 680
Sound Card
Onboard Realtek
Monitor(s) Displays
Dell 2005FPW
Screen Resolution
1680x1050
Hard Drives
Intel 520 SSD 240 GB,
2x Seagate 7200.12 1 TB
PSU
Corsair 850W HX
Case
Corsair 500R
Cooling
Corsair H100
Keyboard
Microsoft Natural 4000
I'm trying to write a batch file that when run creates a folder named "Backup" followed by the time it was created, and then copies files to that folder.

When I run

md "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Backups\Backup %DATE%\"
xcopy /e /v /y "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Server\world" "C:\Users\MasterControlProgram\Documents\MC Server With Backup\Backups\Backup %DATE%\"
pause

It creates a folder named the date it was created and places the folders in it. How do I make it so the folder is named the time instead of the date?


Welcome to the windows 7 forums.

set TIMEST=%TIME:~0,2%_%TIME:~3,2%_%TIME:~6,2%
This will remove the : and spaces from time and concatenate it together
to give you %timest%


One problem with using the time and date is that the format for time can have
:'s in it and directory or file names don't accept the colon.

by stripping out the : you can make a real file or directory name.

the same goes with the date when it is less than 10 on the day or month.

the date can have / marks in it and/or spaces which requires removal.

this does them both.

set DATEST=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2%-%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

Execute it and then echo %datest% and the output will be all numbers showing the numeric date and - then the number time.

Give it a shot

rich
 

My Computer My Computer

At a glance

Windows 7 Pro x64 SP1Intel Core I716 GigsNVIDIA GeForce GTX 670M
Computer type
Laptop
Computer Manufacturer/Model Number
Toshiba Laptop Qosimo X870
OS
Windows 7 Pro x64 SP1
CPU
Intel Core I7
Motherboard
Toshiba Qosmio
Memory
16 Gigs
Graphics Card(s)
NVIDIA GeForce GTX 670M
Monitor(s) Displays
17.7" laptop
Screen Resolution
1600 x 900
Hard Drives
256 Gig SanDisk SSD for C
256 Gig Intel SSD for D
Internet Speed
50/25 FIOS
Antivirus
Vipre (all you can eat for 10 machines)
Browser
IE and FF
Other Info
I have dos 6.22, wfwg 3.11, win98, 2000 and xp VHD's available for testing. MS's Virtual PC works great.
Back
Top