Seguindo o conselho de Ramhound, fiz o seguinte:
$results = Get-ChildItem . backup -r | ? {$_.PSIsContainer}
foreach ($object in $results)
{
$name = $object.FullName + "\*.*"
compact /c /f $name
}
Ok, quase deu certo. Ele comprime todos os arquivos em todos os diretórios de backup sob o atual, mas ele não marca os diretórios como compactados, portanto, ele não parece compactar novos arquivos conforme eles são colocados.