Jeremy F.
Jeremy F.

Reputation: 1880

PowerShell - Execute PowerShell Script on the C: drive of a remote server

PowerShell Version 5 build 10586

I am using the following code to remote connect to a server from my local PC

$cimSession = New-CimSession -ComputerName "SERVERNAME.DOMAIN.COM"


     Invoke-Command -ComputerName SERVERNAME -ScriptBlock {Get-ChildItem “C:\Temp\ps”}

     Invoke-Command -ComputerName SERVERNAME -FilePath "\\SERVERNAME\c$\Temp\ps\PS_SCRIPT_FILE.ps1"


Remove-CimSession -CimSession $cimSession

The first command is able to run successfully and sees the PowerShell file on the remote server.

The second command fails with an error:

Invoke-Command : Cannot find path '\\SERVERNAME\c$\Temp\ps\PS_SCRIPT_FILE.ps1' because it does not exist.

Is there another way to call/run a PowerShell script on the C Drive of a remote server?

Upvotes: 1

Views: 2746

Answers (1)

Brian O''Byrne
Brian O''Byrne

Reputation: 560

Try this:

Invoke-Command -ComputerName SERVERNAME -ScriptBlock { Invoke-Command -FilePath "C:\Temp\ps\PS_SCRIPT_FILE.ps1" }

In your existing code the -FilePath parameter is processed on the calling machine. By including that as a parameter within the ScriptBlock it should be processed on the target machine.

Upvotes: 2

Related Questions