回答:
Josh Kingが指摘したように、srvinfoこれはWindows 2003リソースキットツールです。
Windows 7では次を使用できます systeminfo
systeminfo /s remote_computer_name
100%正確ではありませんが、自分で確認する必要があります。
結果の例を次に示します。具体的には100%正確ではない結果を選択しましたが、このマシンは Windows Server 2008です。
警告:我々は、少なくとも1オープンと1つのクローズドポート見つけることができなかったので、OSScan結果は信頼できないかもしれ
デバイスタイプ:汎用
(JUST推測)の実行:Microsoft Windows Vistaで| 2008年| 7(98%)
積極的なOSの推測:マイクロソフトのWindows Vista SP0またはSP1、Server 2008 SP1、またはWindows 7(98%)、Microsoft Windows Server 2008(98%)、Microsoft Windows 7 Professional(97%)、Microsoft Windows Vista Business SP1(93%)、Microsoft Windows Vista Home Premium SP1( 93%)、Microsoft Windows Server 2008 SP2(91%)、Microsoft Windows Vista Home Premium SP1、Windows 7、またはServer 2008(91%)、Microsoft Windows 7(90%)
ホストと完全に一致するOSはありません(テスト条件が非理想)。
ありがとう[squillman] :)
検査するマシンが非常に多い場合は、次のようにします。
(1)Create TXTファイルには、マシンのすべてのホスト名が含まれます。例:ALL-MACHINES.TXT
machine_number_0001
machine_number_0002
machine_number_0013
machine_number_0101
machine_number_0111
(2)CMD内でFOR命令を実行します。
C:\Users\MrCMD> FOR /F %S IN ('TYPE ALL-MACHINES.TXT') DO SYSTEMINFO /S %S [enter]
(3)改善のためのコメントを歓迎します。:)
Windows Serverリソースキットのいずれかにアクセスできる場合(2003年、確かに新しいバージョンについてはわかりません)、Srvinfoコマンドを使用できます。
Srvinfo \\remote_compute_rname
そこから多くの情報を取得しますが、あなたが興味を持っているのは:
製品名:Microsoft Windows XP製品オプション:Professional
多くのマシンを実行する必要があり、PowerShellを使用したい場合は、次のようになります。
単一マシン:Get-CimInstance Win32_OperatingSystem -ComputerName マシン名 | Select-Object CSName、Caption、BuildNumber、OSArchitecture
すべてのマシン:Get-ADComputer -filter * | Foreach-Object {Get-CimInstance Win32_OperatingSystem -ComputerName $ _。name -ErrorAction SilentlyContinue | Select-Object CSName、Caption、BuildNumber、OSArchitecture} | Format-Table -Property * -AutoSize
もちろん、WinRMが有効になっていると仮定します。PS経由でWinRMをバッチで有効にすることもできますが、それは別のトピックです。