Первое, что вам нужно сделать, это сгруппировать все файлы по дате, используя group-object:
$groups = dir | group-object -property {$_.LastWriteTime.Date}
затем для каждой группы создайте командную строку, которая выполняет архивирование, и выполните ее:
$groups | foreach{$cmd = "7z.exe a $((Get-Date $_.Name).ToString(`"MMddyy`")).7z $([string]::join(`" `", $_.Group))"; invoke-expression $cmd}
Предупреждение , вышеупомянутое на самом деле не проверено (например, оно не будет работать, если вы пробелы в своем имени файла). Но, надеюсь, это даст вам достаточно, чтобы продолжить.