Consider the following code:
start-job -scriptblock { sleep 10; cmd /c set > c:\\env.txt; }
exit
The background job is killed when the p
If found that using Invoke-Command was able to bypass the restriction that the background job dies with it's parent. The nice thing is that the syntax is almost the same as with start-job, so the scriptblock can be kept as is.
start-job -scriptblock { sleep 10; cmd /c set > c:\env.txt; }
would just turn into
Invoke-Command -ComputerName . -AsJob -scriptblock { sleep 10; cmd /c set > c:\env.txt; }
and suddenly survive the death of it's parent (probably because invoke-command is fit to run programs on another computer so the parent can never matter to it)