DNS サーバーの合計レコード数を取得する方法 (Windows Server 2003)

DNS サーバーの合計レコード数を取得する方法 (Windows Server 2003)

DNS サーバー (Windows Server 2003 - Active Directory 環境) の合計レコード数を取得するにはどうすればよいでしょうか。

この情報をPowershell/wmi経由で取得することは可能ですか?

アップデート:

これまで私はPowershellでこれを使用しました:

& "d:\AdminTools\SupportTools\Windows2003\dnscmd.exe" SERVERDNS /enumrecords domain.local . > output.txt
gc output.txt | measure-object | select count

助言がありますか ?

答え1

簡単なバッチファイルはどうでしょうか...

@Echo Off
rem Enter the location of the Windows Support Tools below
set @SupportToolsLoc=c:\Program Files\Support Tools

rem Enter the domain name you want to count below
set @DomainName=foo.com

rem Enter DNS Server Name below, or a period for the local server
Set @DNSServer=.

setlocal ENABLEDELAYEDEXPANSION
set /a @RecordCount=0
"%@SupportToolsLoc%\dnscmd" %@DNSServer% /enumrecords %@DomainName% . >DNSRecords.txt
for /f "skip=1 tokens=*" %%f in ('type DNSRecords.txt') do set /a @RecordCount=!@RecordCount! + 1
set /a @RecordCount=!@RecordCount! - 1
If "%@DNSServer%"=="." echo There are !@RecordCount! records in the domain %@DomainName% on the local server
If not "%@DNSServer%"=="." echo There are !@RecordCount! records in the domain %@DomainName% on the DNS Server %@DNSServer%
pause
del /q DNSRecords.txt
endlocal

お役に立てれば、

グレン

関連情報