【发布时间】:2021-09-27 04:26:42
【问题描述】:
是否有人知道如何在 PowerShell 脚本中检测它是从普通 PowerShell 窗口中运行还是从 Exchange 命令行管理程序运行?
某些在其中一个工作的功能在另一个中不起作用,或者产生不同的结果,所以我想检测用户正在使用哪个 UI 来运行脚本,然后在适当的情况下指导他们使用另一个。
【问题讨论】:
-
看看自动
$Host变量 -
@MathiasR.Jessen,我自己无法验证,但 EMS 不是在常规控制台窗口中运行吗?如果是这样,我会寻找特定于 EMS 的 cmdlet(或模块)的存在,例如
$isEMS = [bool] (Get-Command -ea Ignore Get-ExCommand) -
@mklement0 太棒了,是的,这可以解决问题,谢谢。还检查了 $host,但是无论您是否在 EMS 中,EMS 的工作方式 $host 输出都是相同的。
标签: powershell exchange-server