this is my basic back up bat I run it manually before or after I run my server. I dont run my server 24/7 so it is fairly easy to do this.
SET DateTime=%DATE% %TIME%
SET year=%DateTime:~10,4%
SET month=%DateTime:~4,2%
SET day=%DateTime:~7,2%
SET DateString=%year%_%month%_%day%
PUSHD C:\Program Files\7-Zip\
7z a -tzip (BACKUP NAME AND DIR) (WORLD LOCATION)
POPD
REN (BACKUP NAME AND DIR) (BACKUP NAME AND DIR)%DateString%.7z
MOVE /Y (BACKUP NAME AND DIR)%DateString%.7z (DIR OF BACKUPS)
Soooo if you use the defaults you would have something like this.
SET DateTime=%DATE% %TIME%
SET year=%DateTime:~10,4%
SET month=%DateTime:~4,2%
SET day=%DateTime:~7,2%
SET DateString=%year%_%month%_%day%
PUSHD C:\Program Files\7-Zip\
7z a -tzip C:\Users\(UserName)\Documents\Minecraft\Server\Backup.7z C:\Users\(UserName)\Documents\Minecraft\Server\World
POPD
REN Backup.7z Backup%DateString%.7z
MOVE /Y Backup%DateString%.7z C:\Users\(UserName)\Documents\Minecraft\Server\Backups\
Now mind you this means you have 7Zip installed in the default location if not change the line with PUSHD in it. Also this will only work on windows. What this makes is file that is not only named by has a date and time stamp in its name.