首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何执行远程机器上可用的powershell脚本?

如何执行远程机器上可用的powershell脚本?
EN

Stack Overflow用户
提问于 2012-05-04 15:20:36
回答 4查看 80.2K关注 0票数 27

我试图在远程计算机上执行脚本。

我在远程机器上做了"Enable-PSremoting“。

我在远程机器中放置了一个脚本hello.ps1

我的客户端计算机是Windows XP,远程计算机是Windows 2003

然后,在我的客户端计算机上,我尝试执行脚本。

代码语言:javascript
复制
invoke-command -computer $MachineName -filepath "C:\hello.ps1"

我得到了以下错误。

Invoke-Command :找不到路径'C:\hello.ps1‘,因为该路径不存在。

我认为它试图从客户端机器中查找脚本。

如果我试着跑

invoke-command -computer $MachineName -command { C:\hello.ps1 },它在客户端执行远程机器上可用的脚本。

但是我想在远程机器本身执行远程脚本。

如何在远程机器上运行可用的脚本?

更新:

实际上,这个命令"invoke-command -computer $MachineName -command { C:\hello.ps1 }“在远程端工作,并将结果返回给客户端。我误解了它在客户端执行的返回值。

EN

回答 4

Stack Overflow用户

发布于 2012-05-04 17:35:50

当你写的时候:

代码语言:javascript
复制
invoke-command -computer $MachineName -filepath "C:\hello.ps1"

将从客户端计算机获取脚本C:\hello.ps1,并将其带到服务器执行。因此,您会得到错误文件不存在,因为Invoke-Command正在客户端计算机中查找该文件。

票数 16
EN

Stack Overflow用户

发布于 2017-05-06 06:17:35

我得到了同样的错误,但是我在代码中的一个变量中挂接了一个远程会话,最终得到了一些有用的东西:

代码语言:javascript
复制
$s = New-PSSession -ComputerName "WTxxxxxL32" -Credential $credential

Invoke-Command -Session $s -Command {D:\ServerDLLDev\RemoteCOMInstall.ps1}

有一百万个Invoke-etc解决方案,但最简单的最终对我有效。感谢你。

票数 1
EN

Stack Overflow用户

发布于 2016-01-28 12:27:49

我有完全相同的探针,并结合使用[WMICLASS] 's create()Start-Process解决了它。

查看我的答案here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10444451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档