web-dev-qa-db-ja.com

ネットワーク全体でWMICコマンドを実行する

コマンドプロンプトでこれを入力する代わりに、一度に1つずつプロンプトを表示します。

wmic/node:ipaddress/user:administrator/password:mypassword bios get serialnumber

それを1つのサブネット全体に対して実行し、テキストドキュメントに出力するにはどうすればよいですか?コンピューターの在庫を確認するために数か月ごとにこれを行うので、これを手動で行う代わりにバッチスクリプトで実行できるはるかに簡単な方法があると思います。

7
C-dizzle

node:node:ip1,ip2,ip3の後にリストを配置するか、ファイルnode:@fileを使用できます。すべてのIPアドレスをファイルに入れて実行します。

wmic /node:@nodes.txt /user:administrator /password:mypassword /output:out.csv bios get serialnumber /format:csv

これは、ユーザー/パスワードがすべてのマシンで同じであることを前提としています。

13
wmz

ファイルリダイレクトを使用した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。以上です。

2
Chad Harrison