使用WINRM执行/调用本地PS1文件



我已经有几天了。完成并研究了与使用WINRM在本地计算机上执行PowerShell脚本有关的所有内容。

我的目标是从本地到目标远程计算机执行这些PS1脚本。WINRM已经配置并使用其基本命令,但是我找不到任何可以使用WinRM的PowerShell脚本(*.ps1)的东西。

之类的东西
winrm {execute ps1 file} -r:http://<IPaddress>:5985 -auth:basic -u:'username' -p:'password' -encoding:utf-8

任何帮助和建议都非常感谢。

谢谢你们!

首先 - 我相信您正在尝试使用winrs不是winrm-后者通常用于配置WinRM,以前用于运行远程命令。

考虑到这一假设:我很确定您必须将脚本传递到powershell.exe并照顾逃脱的命令元素。对我有用的示例(不是基本的auth,但我认为这无关):

winrs -r:ComputerName powershell -file c:temptest.ps1
winrs -r:ComputerName powershell -file "c:temptest with space.ps1"

我猜为什么有人愿意这样做是不同的。要求您去的任何充分理由:powerShell->本机命令 -> cmd.exe在远程和 ->远程调用powershell?

这样做的是

  • 任何合理的输出(您得到文本)
  • 在运行脚本后保持状态
  • 性能(您带有每个调用的新PowerShell实例

您获得了:

  • 复杂性

最新更新