我想知道是否存在一个组织单元,所以我编写了以下代码,但是它显示了一个错误:不可能用标识OU_Bloquage.Despite找到对象,它确实存在(我已经创建了),下面是我编写的代码
Import-Module ActiveDirectory
Import-Module 'Microsoft-PowerShell.Security'
$OUName = 'OU_Bloquage'
if([bool] (Get-ADOrganizationalUnit $OUName))
{ Write-Host 'true' }
else { Write-Host 'false' }发布于 2019-02-28 17:17:12
@留着胡子的布劳勒-你很接近,但却忽略了问题其余部分的内容。
相反:
$OUName = 'OU_Bloquage' # the OU your looking for.
$OUName = "Name -like '$($OUName)'"
if([bool](Get-ADOrganizationalUnit -Filter $OUName)) {
Write-Host 'true'
} else {
Write-Host 'false' }注意:这假设OU实际上是“OU_Bloquage”,而不是“Bloquage”。如果它只是博客,那么编辑第一行阅读。
发布于 2019-02-28 16:06:36
我会用一个过滤器来找一个你不确定的OU
Get-ADOrganizationalUnit -Filter 'Name -like“*Bloquage*”Name格式-表名,DistinguishedName -A
发布于 2019-02-28 21:51:51
此代码应使用Where-Object进行筛选。
Import-Module ActiveDirectory
$OUName = "OU_NAME"
if([bool] (Get-ADOrganizationalUnit -Filter * | ? {$_.Name -eq $OUName} ))
{ Write-Host 'true' }
else { Write-Host 'false' } 结果:
PS C:\Windows\system32> Import-Module ActiveDirectory
$OUName = "CLOUD"
if([bool] (Get-ADOrganizationalUnit -Filter * | ? {$_.Name -eq $OUName} ))
{ Write-Host 'true' }
else { Write-Host 'false' }
true
PS C:\Windows\system32> Import-Module ActiveDirectory
$OUName = "dsdsadasda"
if([bool] (Get-ADOrganizationalUnit -Filter * | ? {$_.Name -eq $OUName} ))
{ Write-Host 'true' }
else { Write-Host 'false' }
falsehttps://stackoverflow.com/questions/54929409
复制相似问题