我正在尝试使用增量数字生成下一个可用的广告帐户。例如,我的域名目前有帐户名称“opr1000-opr1014”,所以当我运行我的脚本时,我应该期待opr1015,而不是它陷入循环并且永远不会返回值。我让它运行do while循环并以增量增加数值,直到它找到一个未使用的值,此时do while循环不再为true,脚本应该结束。有人有什么想法吗?
$Account = "opr"
$Accountnum = "1000"
$Accountname = $account + $Accountnum
$Accountint = $account + $int
$int = [System.Decimal]::Parse($Accountnum)
do{
$query = "(&(objectClass=user)(samaccountname=$Accountname))"
$result = ([adsisearcher]$query).FindOne()
If($result){$int++}
}While($accountint)
"$account$Int"
答案 0 :(得分:0)
错误很少,请看:
$Account = "opr"
$Accountnum = 1000
do
{
$Accountname = $Account + $Accountnum;
$query = "(&(objectClass=user)(samaccountname=$Accountname))"
$result = ([adsisearcher]$query).FindOne()
if($result -eq $false)
{
break
}
$Accountnum++
} while($true)
答案 1 :(得分:0)
$Account = "opr"
$Accountnum = 1000
do
{
$Accountname = $Account + $Accountnum;
$query = "(&(objectClass=user)(samaccountname=$Accountname))"
$result = ([adsisearcher]$query).FindOne()
if($result)
{
$Accountnum++
}else{
break
}} while($true)
"$Account$Accountnum"