PowerShell - 在远程服务器的C:驱动器上执行PowerShell脚本

时间:2016-06-09 16:19:34

标签: powershell

PowerShell第5版build 10586

我使用以下代码从本地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

第一个命令能够成功运行并在远程服务器上查看PowerShell文件。

第二个命令失败并显示错误:

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

是否有另一种方法可以在远程服务器的C盘上调用/运行PowerShell脚本?

  • 我已授予我的帐户对指定文件的完全访问权限。
  • 我还尝试共享指定的文件夹,并给予自己对该文件夹的读/写权限。
  • 我已将文件路径更改为共享路径并获得相同的结果。
  • Invoke-Command -ComputerName SERVERNAME -FilePath "\\SERVERNAME\ps\PS_SCRIPT_FILE.ps1"

1 个答案:

答案 0 :(得分:2)

试试这个:

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

在现有代码中,在调用计算机上处​​理-FilePath参数。通过将其作为ScriptBlock中的参数包含在内,它应该在目标机器上处理。