PowerShell导入模块通过远程连接

时间:2015-07-31 15:47:41

标签: powershell remote-server powershell-v5.0

问题:当我使用脚本运行依赖于模块的另一个远程脚本时,不会导入该模块。

我有3个相互交互的脚本。 Controller脚本,Body脚本和Functions模块。

Controller正在处理对远程计算机的身份验证,并使用body在远程计算机上执行Invoke-Command脚本。

body依赖于functions模块。

<德尔> 如果我直接在远程计算机上运行`body`脚本,模块正确导入并完成脚本;但是,如果我使用`controller`脚本远程运行`body`脚本,则永远不会导入模块。如果我将模块中的函数嵌入到body脚本中(看起来很乱)并远程运行,脚本就会完成,所以我知道这是导入模块的问题。我也尝试将模块导入`controller`脚本。它正确导入,但当`body`脚本执行时仍无法找到模块中的函数。 (我猜它导入了本地的Powershell ...... shell) 我已经尝试使用`-verbose`标签运行导入模块以查看它是否正在导入,并且它适用于所有实例,除非使用`controller`远程运行`body`。

编辑:我几乎是肯定的,因为它试图找到远程计算机上的模块路径,并且路径正在引用主机上的位置。除了使用远程计算机中的invoke-command返回主机导入模块之外,我不知道如何实现这一目标。

1 个答案:

答案 0 :(得分:0)

为什么不在代码中使用网络路径导入模块?如果您知道模块的位置,您可以提供它的路径,即使它位于远程计算机上