我正忙着在PowerShell的帮助下创建维护计划。
目前我有一个脚本click!,它创建一个包含Active Directory中所有服务器的txt文件
$strFilter = '(OperatingSystem=Windows*Server*)'
我的目标是通过电子邮件发送当天需要维护的服务器的名称。公式将如下:
x servers in Active Directory / 5 working days = y servers a day / 12 weeks = z servers that day
因此每个服务器每三个月进行一次维护
当然我会检查是否有新的服务器&用新文件替换旧文件。但是现在我陷入困境/搞清楚从哪里开始让我的公式在PowerShell中工作。
我的代码:
function listAllServers{
$strFilter = '(OperatingSystem=Windows*Server*)'
$objDomain = New-Object System.DirectoryServices.DirectoryEntry #"LDAP://dc=action, dc=local"
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1000
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = 'Subtree'
$colProplist = 'name'
foreach ($i in $colPropList){$objSearcher.PropertiesToLoad.Add($i)}
$colResults = $objSearcher.FindAll()
#Writing all server-names to file..
foreach ($objResult in $colResults)
{$objItem = $objResult.Properties; $objItem.name | Out-File C:\Servers.txt -append}
}
listAllServers
Get-Content C:\Servers.txt | Measure-Object -Line
请告诉我你的想法。 提前谢谢!