0

ホットフィックスがインストールされている場合は、マシンのリストを照会し、csv ファイルを返す、実行したい wmic コマンドがあります。私の場合、ホットフィックス ID は 2617858 です。処理が開始され、約 20 秒後に次のメッセージが表示されます: エラー: 説明 = 例外が発生しました。ファイルに数台のマシンがある場合は機能しますが、40 台のコンピューターに対して実行する必要があります。

助言がありますか ?ありがとう

コード:

 wmic /failfast:on /node:@"C:\users\username\desktop\servers.txt" qfe | find "2617858" > \\computername\C$\users\username\desktop\hotfix.csv
4

1 に答える 1

0

価値があるのは、配管するwmicよりもフィルタリングを依頼する方が簡単な場合があります。このようなもの:wmicfind

wmic /node:@"C:\users\username\desktop\servers.txt" qfe where hotfixid="KB983590" get csname /format:list >>hotfix.txt

またはwmic、servers.txt内のその数のサーバーを処理できないことが問題である場合は、バッチforループを使用してリストをループしてみてください。

@echo off
setlocal
for /f "usebackq delims=" %%I in ("C:\users\username\desktop\servers.txt") do (
    set /P "=Checking %%I... "
    wmic /node:%%I qfe where hotfixid="KB983590" get csname /format:list >>hotfix.txt 2>>failures.txt
    echo Done.
)
echo Unable to query the following computers:
type failures.txt

別の方法として、PowerShellを使用して同じアクションを実行できます。

powershell -command "$pcs = Get-Content C:\users\username\desktop\servers.txt; foreach ($pc in $pcs) { Get-WmiObject -Computername $pc Win32_QuickFixEngineering | where-object {$_.hotfixid -eq 'KB980232'} | select-object csname }" >>hotfix.txt

... wmiがwmicのサーバーで応答しない場合でも、PowerShellを使用してもそれほど幸運はありません。

于 2013-03-08T14:41:05.017 に答える