コマンドプロンプトでこれを入力する代わりに、一度に1つずつプロンプトを表示します。
wmic/node:ipaddress/user:administrator/password:mypassword bios get serialnumber
それを1つのサブネット全体に対して実行し、テキストドキュメントに出力するにはどうすればよいですか?コンピューターの在庫を確認するために数か月ごとにこれを行うので、これを手動で行う代わりにバッチスクリプトで実行できるはるかに簡単な方法があると思います。
node:
node:ip1,ip2,ip3
の後にリストを配置するか、ファイルnode:@file
を使用できます。すべてのIPアドレスをファイルに入れて実行します。
wmic /node:@nodes.txt /user:administrator /password:mypassword /output:out.csv bios get serialnumber /format:csv
これは、ユーザー/パスワードがすべてのマシンで同じであることを前提としています。
ファイルリダイレクトを使用したforループは機能しますが、ノードセットにさらに多くの穴がある場合(つまり、ループ内のIPを解決できない場合)、しばらく待機させておくことができます。
(FOR /L %s IN (1,1,254) DO wmic /node:192.96.1.%s /user:administrator /password:pass bios get serialnumber) >> c:\results.txt
これをバッチファイルに入れる場合は、%s
と%%s
。以上です。