天天看点

<Power Shell>06获得一台计算机或者服务器的AD 站点名称

通常我们在.NET查询一台计算机的站点服务器名称使用的是 ActiveDirectorySite 这个类。

1

<code>[System.DirectoryServices.ActiveDirectory.ActiveDirectorySite]</code><code>::GetComputerSite().Name</code>

但是,有时候我们要查询远程计算机的站点名称,这个ActiveDirectorySite类不允许我们查询。

通常我们都是去远程计算机进入后查询注册表(这单非常麻烦)

(HKLM:\SYSTEM\CurrentControlSet\services\Netlogon\Parameters).

另一种方法是使用NLTEST的命令来进行查询或者命令第一站点的名称

2

3

<code>PS&gt; nltest /server:server1 /dsgetsite</code>

<code>Default</code><code>-First-Site-Name</code>

<code>The command completed successfully</code>

如果命令完成我们得到的是默认的域的第一站点名称

最后包含的那个函数我们可以重复使用

4

5

6

7

8

9

<code>function</code> <code>Get-ComputerSite</code><code>(</code><code>$ComputerName</code><code>)</code>

<code>{</code>

<code>   </code><code>$site</code> <code>= nltest /server:</code><code>$ComputerName</code> <code>/dsgetsite 2&gt;</code><code>$null</code>

<code>   </code><code>if</code><code>(</code><code>$LASTEXITCODE</code> <code>-eq</code> <code>0){ </code><code>$site</code><code>[0] }</code>

<code>}</code>

<code>                                                            </code> 

<code>PS&gt; </code><code>Get-ComputerSite</code> <code>server1(服务器或者计算机)</code>

这个非常有用,对于部署systemcenter的企业管理员,有效的远程查看相关的信息。

     本文转自cantgis 51CTO博客,原文链接:http://blog.51cto.com/cantgis/1225640,如需转载请自行联系原作者

继续阅读