获取当前的 Exchange Server
Get current Exchange Server
我用的是EMS。调用 Get-ExchangeServer 命令时,我正在获取可用 Exchange 服务器的列表。
现在问题:
如何获取当前的 Exchange 服务器(我已经调用 Get-ExchangeServer 命令的服务器)?
任何人都可以建议如何实现它吗?
使用环境变量 $ENV:COMPUTERNAME
检索您正在调用命令的交换服务器的服务器名称。
Invoke-Command -ComputerName Exchange.domain.com `
-ScriptBlock {Get-ExchangeServer -Identity $ENV:COMPUTERNAME} `
-Credential (Get-Credential)
简答:
Get-ExchangeServer | select PSComputerName,OriginatingServer -Unique
解释(长答案):
命令的输出Get-ExchangeServer
,已经有你感兴趣的成员:
PS:\ > Get-ExchangeServer | Get-Member
Name MemberType (my explanation)
---- ---------- -----------------
. . .
PSComputerName NoteProperty It's the current ExchangeServer (the one that actually your command has been executed on)
OriginatingServer Property It's the current DomainController (the one that your ExchangeServer has used for the query)
. . .
然后,使用 EMS 或 PSRemoting,它总是 returns 你想要的。但是,如果您的环境中有多个 ExchangeServer,则输出可能包含具有相同值的多行。喜欢 :
PS:\ > Get-ExchangeServer | select PSComputerName,OriginatingServer
PSComputerName OriginatingServer
-------------- -----------------
exch-srv2 dc3.contoso.com
exch-srv2 dc3.contoso.com
. .
这就是为什么您可以在执行 Select
时使用 -unique
来避免输出中的重复行。
PS:\ > Get-ExchangeServer | select PSComputerName,OriginatingServer -Unique
PSComputerName OriginatingServer
-------------- -----------------
exch-srv2 dc3.contoso.com
我用的是EMS。调用 Get-ExchangeServer 命令时,我正在获取可用 Exchange 服务器的列表。
现在问题:
如何获取当前的 Exchange 服务器(我已经调用 Get-ExchangeServer 命令的服务器)?
任何人都可以建议如何实现它吗?
使用环境变量 $ENV:COMPUTERNAME
检索您正在调用命令的交换服务器的服务器名称。
Invoke-Command -ComputerName Exchange.domain.com `
-ScriptBlock {Get-ExchangeServer -Identity $ENV:COMPUTERNAME} `
-Credential (Get-Credential)
简答:
Get-ExchangeServer | select PSComputerName,OriginatingServer -Unique
解释(长答案):
命令的输出
Get-ExchangeServer
,已经有你感兴趣的成员:
PS:\ > Get-ExchangeServer | Get-Member
Name MemberType (my explanation)
---- ---------- -----------------
. . .
PSComputerName NoteProperty It's the current ExchangeServer (the one that actually your command has been executed on)
OriginatingServer Property It's the current DomainController (the one that your ExchangeServer has used for the query)
. . .
然后,使用 EMS 或 PSRemoting,它总是 returns 你想要的。但是,如果您的环境中有多个 ExchangeServer,则输出可能包含具有相同值的多行。喜欢 :
PS:\ > Get-ExchangeServer | select PSComputerName,OriginatingServer
PSComputerName OriginatingServer
-------------- -----------------
exch-srv2 dc3.contoso.com
exch-srv2 dc3.contoso.com
. .
这就是为什么您可以在执行 Select
时使用 -unique
来避免输出中的重复行。
PS:\ > Get-ExchangeServer | select PSComputerName,OriginatingServer -Unique
PSComputerName OriginatingServer
-------------- -----------------
exch-srv2 dc3.contoso.com