PowerShellでタスクを自動化する方法

IT管理者または技術オタクなら、自動化の重要性をご存知でしょう。Windowsユーザー向けの最高の自動化ツールの1つは、Microsoft PowerShellです。それだけでなく、Microsoftは自動化のニーズを支援するためのさまざまなツールを提供しているため、サードパーティのアプリケーションをインストールする必要はありません。このガイドでは、PowerShellでタスクを自動化する方法を紹介します。

PowerShellスクリプトとは何ですか?

PowerShellを使用する経験があれば、オペレーティングシステムを構成するためにコマンドを使用したことがあるでしょう。スクリプトは、それらのコマンドの集合で.ps1ファイルです。.ps1ファイルには、基本的なGet-Helpコマンドなど、PowerShellによって実行されるスクリプトが含まれています。Get-Helpのような単純なコマンドは.ps1ファイルに保存する価値がないかもしれませんが、Get-Date -DisplayHint Dateのようなより複雑なコマンドは、時間を節約するためにスクリプトファイルに書き込む必要があります。後で.ps1ファイルに保存する価値のある、より複雑なコマンドについて詳しく説明します。

PowerShellでタスクを自動化する方法

PowerShellは単なるアプリケーションではなく、ITタスクを自動化する.Net CLR上に構築されたスクリプティング言語です。CMDとの下位互換性があり、単純または複雑なタスクを自動化できます。その普遍的な性質により、Windowsクライアントとサーバー、macOS、Linux、およびクラウド環境で使用できます。PowerShellは、ほとんどのIT専門家が日常業務を自動化するために使用する強力なツールです。

PowerShellでタスクを自動化するには、次の手順に従うだけです。

  1. PowerShellでスクリプトの実行を許可するように実行ポリシーを構成する
  2. PowerShellスクリプトを作成する
  3. PowerShellスクリプトを実行してテストする
  4. タスクスケジューラを使用してスクリプトをスケジュールする

それらについて詳しく説明しましょう。

1] PowerShellでスクリプトの実行を許可するように実行ポリシーを構成する

デフォルトでは、Windowsは実行ポリシーを使用して、ユーザーがPowerShellでスクリプトを実行することを制限しています。ただし、コマンドを実行することで簡単に変更できます。

実行ポリシーを確認するには、PowerShellの昇格モードで次のコマンドを実行します。

Get-ExecutionPolicy

「AllSigned」と表示されている場合は、ローカルコンピュータに書き込まれたスクリプトを含む、すべてのスクリプトと構成ファイルが信頼できる発行者によって署名されています。

実行ポリシーを変更するには、次のコマンドを実行します。

set-executionpolicy unrestricted

または

set-executionpolicy remotesigned

これにより、PowerShellスクリプトを実行できるようになります。

2] PowerShellスクリプトを作成する

PowerShellスクリプトの領域を探求するには、それ自体が別の記事になりますが、ここでは基本的なPowerShellスクリプトを作成して実行する方法を説明します。

# コンピュータのすべてのプロパティを取得する
$systemInfo = Get-ComputerInfo
$systemInfo
# 特定のバージョンプロパティを取得する
$versionInfo = Get-ComputerInfo -Property "*version"
$versionInfo

このスクリプトは、WindowsバージョンやBIOSバージョンなどのバージョン関連のプロパティを含む、すべてのシステムとオペレーティングシステムのプロパティを取得します。

PowerShellスクリプトを書くためのさまざまなツールがありますが、コンピュータにプリインストールされているメモ帳を使用します。

メモ帳を開き、前に示したスクリプトを貼り付け、「ファイル」>「名前を付けて保存」に移動し、.ps1拡張子で名前を付け、「名前を付けて保存」の種類を「すべてのファイル」に変更してEnterキーを押します。ファイルが保存されない場合は、場所をデスクトップに変更してから試してください。

メモ帳にはさまざまな機能が欠けているため、PowerShellスクリプトを書くにはVisual Studio Codeを使用することをお勧めします。

3] PowerShellスクリプトを実行してテストする

次に、PowerShellスクリプトを実行する方法を見てみましょう。メモ帳を使用してPowerShellスクリプトを作成したので、それを実行するにはPowerShellを使用する必要があります。管理者としてPowerShellを開き、次のコマンドを実行します。

& "script-location/script-name.ps1"

スクリプトの正確な場所がわからない場合は、スクリプトを右クリックして「プロパティ」に移動し、「場所」フィールドから正確な場所をコピーします。前に