powershellinvoke-command

PowerShell Invoke-Command with FilePath on local computer - vague parameters error?


I want to run a script in file on the local machine using Invoke-Command so I can pass in parameters with -ArgumentList. I've been getting an error I don't understand, so I simplified my command. When I do this:

Invoke-Command -FilePath 'getprocess.ps1'

The content of getprocess.ps1 is:

Get-Process

The error message I get is:

Invoke-Command : Parameter set cannot be resolved using the specified named parameters.

At line:1 char:1

+ Invoke-Command -FilePath 'getprocess.ps1'

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : InvalidArgument: (:) [Invoke-Command], ParameterBindingException

+ FullyQualifiedErrorId : AmbiguousParameterSet,Microsoft.PowerShell.Commands.InvokeCommandCommand

I'm baffled by this error message. What does it mean? How do I get this to work?


Solution

  • Although the error message doesn't make it clear, the -FilePath parameter makes the -ComputerName parameter required. To explicitly target the local computer, use -ComputerName localhost.

    Invoke-Command -FilePath 'getprocess.ps1' -ComputerName localhost