PowerShell を使用してタスクを自動化する方法
IT 管理者や技術オタクなら、自動化の重要性を知っているでしょう。 Windows ユーザーにとって最適な自動化ツールの 1 つは Microsoft PowerShell です。それだけでなく、Microsoft は自動化のニーズを支援するさまざまなツールを提供しているため、サードパーティのアプリケーションをインストールする必要はありません。このガイドでは、PowerShell を使用してタスクを自動化する方法を説明します。
PowerShell スクリプトとは何ですか?
PowerShell の使用経験がある場合は、すでにコマンドを使用してオペレーティング システムを構成したことがあるでしょう。スクリプトは、 .ps1ファイル内のこれらのコマンドの集合です。 A. ps1 ファイルには、基本的な Get-Help コマンドなど、PowerShell によって実行されるスクリプトが含まれています。 Get-Help のような単純なコマンドは、.html ファイルに保存する価値がない場合があります。 ps1 ファイル、Get-Date -DisplayHint Date などのより複雑なコマンドは、時間を節約するためにスクリプト ファイルに書き込む必要があります。 .ps1 ファイルに保存する価値のある、より複雑なコマンドについては後ほど説明します。
PowerShell を使用してタスクを自動化する方法
PowerShell は単なるアプリケーションではなく、その上に構築されたスクリプト言語です。 IT タスクを自動化する Net CLR。 CMD との下位互換性があり、単純なタスクまたは複雑なタスクを自動化できます。 PowerShell はその普遍的な性質により、Windows クライアントとサーバー、および macOS、Linux、およびクラウド環境で利用でき、ほとんどの IT プロフェッショナルが日常業務を自動化するために使用する魅力的なツールです。
PowerShell でタスクを自動化するには、次の手順に従うだけです。
- PowerShell で実行ポリシーを構成してスクリプトの実行を許可する
- PowerShell スクリプトを作成する
- PowerShell スクリプトを実行してテストする
- タスク スケジューラを使用してスクリプトをスケジュールする
それらについて詳しく話しましょう。
1] PowerShell で実行ポリシーを構成してスクリプトの実行を許可する
デフォルトでは、Windows は実行ポリシーを使用して、ユーザーが PowerShell でスクリプトを実行することを制限します。ただし、コマンドを実行することで簡単に変更できます。
実行ポリシーを確認するには、 PowerShell の昇格モードで次のコマンドを実行します。
Get-ExecutionPolicy
「AllSigned」と表示されている場合は、ローカル コンピューター上で作成されたスクリプトも含め、すべてのスクリプトと構成ファイルが信頼できる発行者によって署名されています。
実行ポリシーを変更するには、次のコマンドを実行します。
set-executionpolicy unrestricted
または
set-executionpolicy remotesigned
これにより、PowerShell スクリプトを実行できるようになります。
2] PowerShell スクリプトを作成する
PowerShell スクリプトの領域を詳しく調べるには、別の記事が必要ですが、ここでは基本的な PowerShell スクリプトを作成して実行する方法を説明します。
# Get all computer properties
$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"
スクリプトの正確な場所がわからない場合は、スクリプトを右クリックして「プロパティ」に移動し、「場所」フィールドから正確な場所をコピーします。スクリプトの場所と名前を前述の構文に入力するだけで準備完了です。
4] タスクスケジューラを使用してスクリプトをスケジュールする
スクリプトが正常に実行されている場合は、スクリプトをスケジュールしても問題はありません。同じことを行うには、その名前が示すように実行できる組み込みの Windows アプリケーションであるTask Scheduleを使用します。以下の手順に従って、PowerShell スクリプトをスケジュールします。
- タスクスケジューラを起動します。
- 「タスク スケジューラ ライブラリ」を右クリックし、「基本タスクの作成」をクリックします。
- 名前と説明 (必要な場合) を入力し、「次へ」をクリックします。
- ここで、タスクをいつスクリプト化するかを選択し、「次へ」をクリックします。
- 次のウィンドウで正しい日付と時刻を選択し、「次へ」をクリックします。
- 「アクション」ウィンドウで「プログラムの開始」を選択し、「次へ」をクリックします。
- 次に、「プログラム/スクリプト」オプションで「参照」をクリックします。
- C:\Windows\System32\WindowsPowerShell\v1.0 に移動し、powershell.exe を選択します。
- 次に、[引数の追加] にスクリプト名と場所を入力し、[次へ] > [完了] をクリックします。
タスクを選択して「実行」をクリックすると、タスクが機能しているかどうかを確認できます。
Windows コンピューター上で PowerShell スクリプトを作成して実行する方法が理解できたと思います。
PowerShell を使用してタスクを自動化できますか?
はい、PowerShell スクリプト言語を使用すると、実行時にタスクを自動的に実行できるスクリプトを作成できます。このスクリプトは、組み込みのタスク スケジューラ ユーティリティを使用してスケジュールでき、すぐに使用できます。
PowerShell スクリプトを自動的に実行するようにスケジュールするにはどうすればよいですか?
タスク スケジューラ ユーティリティを使用すると、PowerShell スクリプトを自動的に実行できます。特定の時間に実行するようにスケジュールを設定すれば、間違いなくそれを実行してくれます。
コメントを残す