Author Posts

November 3, 2017 at 4:27 pm

I have a PowerShell script that issues a command like:

$my_exit = invoke-Command -Session $my_session -ScriptBlock { ... } -Args

to execute a long script on a target server.
If the calling script terminates for any reason (maybe, the PC is powered off due to a power failure) the script on the target host terminates as well.
How can I launch a script on a target host so that it continues even if the calling script closes?
I made a test adding the -asjob qualifier with no success.
Regards
marius

November 6, 2017 at 1:54 am

Try this:

Run the remote scripts on a remote computer with a persistent session

 
$session = New-PSSession -computername "FQDN" -credential Get-Credential
Invoke-Command -session $session -ScriptBlock {E:\Testing.ps1 "param1"}

November 7, 2017 at 3:54 pm

To add to the answer, you could try this:

$session = New-PSSession -computername "FQDN" -credential Get-Credential
Invoke-Command -session $session -ScriptBlock {start cmd.exe  "/k powershell.exe ./DoThis.ps1"}