What I've done to get files that changed that day was use Robocopy to copy the newly modified files to a temporary directory and then 7zip that.
EDIT:
Right from the go I want to say I'm not batch script ninja, but through reading websites I was able to kluge something together that seem to work good enough. I'm not a programmer, but I'm the "computer guy", so I just know more than most I work with.
Here is the script I use. The date format is different than you asked for, chose YYYY-MM-DD because then things would sort well in Windows Explorer. You should be able to change that to how you want things labeled.
The /maxage:1 part of the script is what limits to things what had change within a day. I run the backup script daily.
One problem I hadn't fixed in the script is if no files have changed, a 7z file of 32k in size is still created (an empty 7z archive). I had planned to add empty directory detection, or if nothing else do a hash and compare to an empty 7z archive hash and if the match then delete the newly created empty 7z archive.
In my full backup script, I have the script hash the archive so I can manually compare the hashes of the last two full backups to see if they are the same. (Having a script like this won't detect if files were deleted because incremental backups would show no files added.) If the current hash and previous hash are the same, I delete newest backup because nothing had changed since then. (I planned to automate is checking if I had time.)
I hope cleaning the script up (removing server names and so on) I didn't break it, and I never had much time to polish up the script so it is crude. At any rate, I hope it will be good enough to get started down the right direction to a script that will meet your requirements.
If you need any clarification on switches or why I chose the switches I did, feel free to ask.
rem Setup Variables...
set zcmd="c:\program files\7-zip\7z" a -t7z -r -mx=7 -ssw -mtc=on
set backupdir=C:\_backups\2burn
set tempdir=C:\_backups\temp
rem date format YYYY_MM_DD
set mydate=%date:~10,4%_%date:~4,2%_%date:~7,2%
set rc=c:\robocopy.exe
rem Make Directories...
md %backupdir%\%mydate%
if exist %tempdir% rd %tempdir% /s /q
if not exist %tempdir% md %tempdir%
rem Copy changed files...
%rc% \\server1\source\path %tempdir%\temp\path *.* /s /z /copy:dat /maxage:1 /r:5 /w:5 /log:%backupdir%\%mydate%\log.txt /np
rem Compress changed files...
if exist %tempdir%\temp\path %zcmd% %backupdir%\%mydate%\backup1.7z %tempdir%\temp\path\*.*
rem Remove temp directory...
rd %tempdir%\temp\path\ /q /s
rem copy compressed file and log to offsite server...
%rc% /copy:dat /e /z /r:5 /w:5 %backupdir%\%mydate% "\\remote_server\share\backup_path\%mydate%"
rem email changed files log from offsite server...
rem C:\blat\blat262\full\blat -subject "BATCH: backup1 inc backup for %mydate%." -bodyf "\\remote_server\share\backup_path\%mydate%\log.txt" -server \\mailserver -f AccountToSendTo -tf c:\ListOfAdmins2Email.txt -u Username -pw Pa$$w0rd
Go figure."%DATE:~7,2%.%DATE:~4,2%.%DATE:~-4% Backup".7z gives me .2..1.2010 Backup.7z .very odd.%DATE% shows "R 05.11.2010" .The letter is first letter of Friday in my local language. – TMRW – 2010-11-05T20:26:48.097
1change
"%DATE:~7,2%.%DATE:~4,2%.%DATE:~-4% Backup"to"%DATE:~2,2%.%DATE:~5,2%.%DATE:~-4% Backup"- it'll work fine. @TMRW – Sathyajith Bhat – 2010-11-05T21:05:57.883Exellent.It finally worked."%DATE:~2,2%.%DATE:~5,2%.%DATE:~-4%" did the trick.Thank you very much.Since i can´t flag this comment as accepted answer i´ll mark your second reply as answer. – TMRW – 2010-11-08T05:30:44.433
@TMRW you're welcome. I've edited the answer to reflect what actually works. – Sathyajith Bhat – 2010-11-08T12:51:24.013
OK. Then you change your locale and this stops working. Don't rely on string operations. That's why I'm still using WinRAR though it's less efficient. – noober – 2012-11-15T12:14:11.913
Even more. I'm using en-US locale as default for en-US Windows Server. Neither comma instead of point, nor 24H instead of AM/PM. But I've changed date format to dd.mm as it's used in user output. What if someone changes it back to default? – noober – 2012-11-15T12:23:03.827