Book Image

Windows Server 2012 Automation with PowerShell Cookbook

By : EDRICK GOAD
Book Image

Windows Server 2012 Automation with PowerShell Cookbook

By: EDRICK GOAD

Overview of this book

Automating server tasks allows administrators to repeatedly perform the same, or similar, tasks over and over again. With PowerShell scripts, you can automate server tasks and reduce manual input, allowing you to focus on more important tasks. Windows Server 2012 Automation with PowerShell Cookbook will show several ways for a Windows administrator to automate and streamline his/her job. Learn how to automate server tasks to ease your day-to-day operations, generate performance and configuration reports, and troubleshoot and resolve critical problems. Windows Server 2012 Automation with PowerShell Cookbook will introduce you to the advantages of using Windows Server 2012 and PowerShell. Each recipe is a building block that can easily be combined to provide larger and more useful scripts to automate your systems. The recipes are packed with examples and real world experience to make the job of managing and administrating Windows servers easier. The book begins with automation of common Windows Networking components such as AD, DHCP, DNS, and PKI, managing Hyper-V, and backing up the server environment. By the end of the book you will be able to use PowerShell scripts to automate tasks such as performance monitoring, reporting, analyzing the environment to match best practices, and troubleshooting.
Table of Contents (19 chapters)
Windows Server 2012 Automation with PowerShell Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Reporting missing updates


When managing updates, the first step Windows performs is scanning for reporting on the applicable updates. This is performed automatically by the Windows update client randomly during the day and reported to the update server. However, this process can be manually initiated and the results viewed at the local client.

Getting ready

In this recipe, we will be working with a client that has already been configured with a local update server.

How to do it...

Complete the following steps to report on missing updates:

  1. Create the searcher object:

    $searcher = New-Object -ComObject Microsoft.Update.Searcher
    $searcher.Online = $true
    $searcher.ServerSelection = 1
  2. Define the search criteria:

    $results = $searcher.Search('IsInstalled=0')
  3. Display the results:

    $results.Updates | `
    Select-Object @{Name="UpdateID"; `
    Expression={$_.Identity.UpdateID}}, Title

When executed, the list of available updates will be returned as shown in the following screenshot:

How it works...

PowerShell uses ComObject...