Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $ErrorActionPreference = "Stop"
- $scriptBlk = {
- Write-Output "this is some output"
- Start-Sleep 5
- Write-Output "yup, yup"
- }
- $jobs = @()
- $jobs += Start-Job $scriptBlk
- $jobs += Start-Job $scriptBlk
- $jobs += Start-Job $scriptBlk
- function PrintJobWithData {
- param(
- [Parameter(Mandatory = $True, ValueFromPipeline = $True)]
- $job
- )
- if ($job.HasMoreData -eq "True") {
- Write-Output "--- Job $($job.Name)"
- $job | Receive-Job
- }
- }
- do {
- $jobstate = $jobs | Get-Job | Where-Object -Property State -eq "Running"
- $jobstate | Get-Job | % {$_ | PrintJobWithData}
- Start-Sleep 2
- } while ($jobstate)
- $jobs | Get-Job | % {$_ | PrintJobWithData}
- $jobs | Remove-Job
Add Comment
Please, Sign In to add comment