Powershell: obtener salida de Receive-Job

Tengo una colección de trabajos que se están ejecutando. Cuando terminan, utilizo receive-job y escribe la salida en la pantalla. Me gustaría tomar esa salida y registrarla en un archivo. No quiero ajustar la salida producida mientras se ejecutan los trabajos, ya que si se ejecutan varios trabajos a la vez, se intercalará el registro. Get-Job | Receive-Job imprime la salida de una manera agradable organizada.

He intentado todo lo siguiente y no se escribe ninguna salida en el archivo ni se almacena en una variable, solo va a la pantalla:

#Wait for last job to complete
While (Get-Job -State "Running") {    
    Log "Running..." -v $info
    Start-Sleep 10        
}    
Log ("Jobs Completed. Output:") -v $info

# Getting the information back from the jobs
foreach($job in Get-Job){
    Receive-Job -Job $job | Out-File c:\Test.log -Append
    $output = Receive-Job -Job $job        
    Log ("OUTPUT: "+$output)
    Receive-Job -Job $job -OutVariable $foo
    Log ("FOO: "+$foo)
}

EDITAR: He eliminado las llamadas adicionales de Receive-Job en el siguiente paso después de ver el comentario de Keith:

# Getting the information back from the jobs
foreach($job in Get-Job){
    Receive-Job -Job $job -OutVariable temp
    Write-Host ("Temp: "+$temp)
    $temp | Out-File -FilePath c:\Test.log -Append 
}

También verifiqué que no estoy utilizando Receive-Job en ninguna otra parte del script. Sin embargo, write-host $ temp y el archivo de salida aún no producen salida.

Respuestas a la pregunta(6)

Su respuesta a la pregunta