基本上,我想要的是搜索给定的OU并确定下一个计算机名
我们的计算机对象命名为:LONDON10、LONDON11、LONDON22。
然而,这有点棘手,因为我们还删除了旧的计算机对象。所以,假设没有LONDON03,我安装的最后一台计算机名为LONDON25。所以下一个应该是LONDON26而不是LONDON03。
我们将笔记本命名为NB-LONDON01、NB-LONDON02等奖励部分。
如有任何帮助,我们将不胜感激:(
我目前的角色中没有AD cmdlet,所以你可能需要调整它,但它应该看起来像这样:
$nextNumber = (Get-ADComputer -Filter * -SearchBase "OU=IT, DC=contoso, DC=com" |% { if ($_.name -match '^(?:NB-)?LONDON([0-9]+)$' ) {[Int]$Matches[1]} } | measure -Maximum).Maximum + 1
如果您需要更改RegEx,我建议使用http://regexstorm.net/tester