ヒントとコツ

API を使用する場合のエクスペリエンスを向上させるためのヒントとコツがいくつかあります。

  • PowerShell コマンドを入力する際、コマンドをオートコンプリートするには [タブ] ボタンを使用します。
  • 一連の処理をつなぎ合わせるには、コマンド内でパイプライン処理を使用します。
  • パッチ スキャンの実行時に出力を表示する場合は、必ず Watch-PatchScan パラメータを使用します。
  • 例:

    Start-PatchScan -MachineGroups “Sample Group” | Watch-PatchScan

  • 任意のコマンドの結果を変数に割り当て、あとで同じ PowerShell セッション内でその変数と対話できます。
  • 例:

    $credReference = Get-STCredential

    $credReference | Where-Object

    { $_.UserName.Contains(“foo”) }

    $myScan = Start-PatchScan –MachineGroups “My Machine”

    Wait-PatchScan –Uid ($myScan.Uid)

  • 特定のパッチ スキャンの結果に対してパッチ配布を実行する場合は、そのパッチ スキャンを変数内に格納して、配布処理にパイプ処理します。
  • 例:

    $myScan = Start-PatchScan –MachineGroups “Sample Group”;

    $myScan | Watch-PatchScan

    Start-PatchDeploy –ScanUid ($MyScan.Uid) –TemplateName “Sample Deploy Template”

  • パッチ スキャンとそれに続くパッチ配布をスクリプト化する場合、必ず Wait-PatchScan パラメータを使用して、スキャンが完了した後で配布が開始されるようにするための時間をとってください。
  • 例:

    $MyScan = Start-PatchScan –MachineGroups “Sample Group” | Wait-PatchScan

    Start-PatchDeploy –ScanUid ($MyScan.Uid) –TemplateName “Sample Deploy Template”

  • 必要になる可能性のある追加モジュールをすべて読み込んでおきます。
  • 例: SQL クラスタと対話する場合、読み込んでおくのは、次のようなモジュールです。

    • Import-Module ServerManager
    • Add-WindowsFeature RSAT-Clustering
    • Import-Module FailoverClusters
  • ダウン時間を最小限にするには、配布前に Invoke-DownloadMissingPatches コマンドを使用できます。
  • これにより、ある日にスキャンを実行し、別の日に Get-PatchScan コマンドを使用して、そのスキャンから配布できるようになります。