ここでの私の目標は次のようなコマンドを実行することですget-adcomputer | Install-WindowsUpdate -AcceptAll -AutoReboot
AD コンピューターをすべて取得し、ComputerName を の ComputerName プロパティにパイプしたいと思いますInstall-WindowsUpdate
。@foreach ステートメントを試しましたが、一度に 1 つずつ実行されるため、実行に非常に時間がかかります。一度に複数のコンピューターを実行できるようにしたいと考えています。
何か案は?
答え1
そこで、最終的に Get-ADcomputer からコンピューター変数を作成しました。Select ステートメントをパイプしてプロパティ "Name" を取得したところ、うまくいきました。次に、変数をコマンドに挿入しました。
$computer = Get-ADComputer -SearchBase "OU=Computers,DC=my,DC=domain,DC=com" -Filter 'Name -like "*vdi*"' | Select -ExpandProperty name
Get-windowsupdate -ComputerName $computer -AcceptAll -Install -AutoReboot
これを機能させるには、すべてのコンピューターに PSWindowsUpdate がインストールされ、Enable-WURemoting と set-executionpolicy が無制限になっていることを確認する必要がありますが、これはあまりうれしくありません。
これが他の人たちの助けになれば幸いです。