PowerShell返回PSSession对象

PowerShell返回PSSession对象,powershell,Powershell,我是PowerShell新手,正在尝试为各种任务编写一些Exchange Online模块化脚本。我正在研究的模型是一个控制脚本,它调用其他参数化脚本来执行可重用的函数 我已经编写了一个连接脚本,但是当我将PSSession对象返回到命令脚本时,我无法导入会话,它以某种方式转换为对象 我应该如何围绕脚本共享此会话 控制脚本: $session = .\Connection.ps1 -user admin@mydomain.com Import-PSSession $session 连接脚本(摘

我是PowerShell新手,正在尝试为各种任务编写一些Exchange Online模块化脚本。我正在研究的模型是一个控制脚本,它调用其他参数化脚本来执行可重用的函数

我已经编写了一个连接脚本,但是当我将PSSession对象返回到命令脚本时,我无法导入会话,它以某种方式转换为对象

我应该如何围绕脚本共享此会话

控制脚本:

$session = .\Connection.ps1 -user admin@mydomain.com
Import-PSSession $session
连接脚本(摘要):


首先,这是因为当您运行脚本时,它会在自己的范围内运行。您将获得作为对象的返回值,但它将不再是“活动”的,因为创建它的范围不存在

第二,听起来很像。将这些部分作为函数而不是脚本编写,然后将它们作为模块编写成单个包


这样做也可以解决您的范围问题,但好处很多。

听起来像是一个计划。我会尝试一下,如果成功的话,我会把它标记为答案!再次感谢你的帮助,@briantist。
Param (
[string]$userparam
)
$UserCredential = Get-Credential -userName $userparam
$Exch = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
return $Exch