0

我在网上找到了一个 VBscript,它将一台计算机加入到用户 OU 中的一个组中,以便直接访问工作。它在我们使用 SCCM 2012 的 OSD 的任务序列中完美运行,但我们遇到了一个障碍,我们只希望添加笔记本电脑而不是所有计算机。

如果有人这么好心,我需要一个脚本(Powershell、VB、JScript)来检测计算机是否已添加到 AD 中的组中。

4

2 回答 2

0

将任务序列步骤设置为根据条件运行。

在此处输入图像描述

上述条件检测计算机是否为笔记本电脑。第一个仅在您集成了 MDT 时才有效,而第二个使用简单的 WMI 查询来检测系统类型。

WMI 查询可能不那么可靠,因此我建议您将 MDT 集成到您的环境中。

于 2013-08-03T22:37:12.373 回答
0

您可以在 PowerShell 中尝试这样的操作来检查命名计算机是否在 OU 中:

脚本:

import-module activedirectory

$OU = @() 
$CheckOU = "LaptopOU"
$computerName = "Laptop12345"

$user = get-adcomputer $computerName -Properties *
$user.DistinguishedName -split "," | %{If($_ -match "OU="){$OU += $_ -replace "OU=",""}}

If($OU -match $CheckOU){
    "Computer:$computerName is in the OU:$CheckOU"
    # Do something...
}
Else{
    "Computer:$computerName is not in the OU:$CheckOU"
    # Do something else..
}

这将获取$computerName并从 Active Directory 中获取它所在的所有 OU,并将它们存储在一个$OU数组中。

然后,您可以使用该数组通过运算符简单地检查计算机是否在给定的 OU ( $CheckOU) 中-match

注意:您需要确保导入activedirectory模块。如果您没有要导入的内容,请点击此链接了解如何获取它:activedirectory 模块

有关 Powershell Active Directory 模块的更多 Cmdlet 和语法,请点击此链接

于 2013-07-22T13:05:11.037 回答