PowerShell とは

完了

PowerShell は、コマンド ライン シェルとスクリプト言語の 2 つの部分で構成されています。 最初は、Windows での管理タスクを自動化するためのフレームワークでした。 PowerShell は、さまざまな種類のタスクに使用されるクロスプラットフォーム ツールとして発展してきました。

コマンド ライン シェルは、マウスを使用してグラフィカル要素を操作するグラフィカル インターフェイスを備えていません。 代わりに、テキスト コマンドをコンピューター コンソールに入力します。 コンソールを使用すると次のような利点があります。

  • 多くの場合、コンソールを操作する方がグラフィカル インターフェイスを使用するより高速です。
  • コンソールでは、コマンドのバッチを実行できるため、継続的インテグレーション パイプラインのタスクの自動化に最適です。
  • コンソールを使用して、クラウド リソースや他のリソースを操作できます。
  • コマンドとスクリプトをテキスト ファイルに保存し、ソース管理システムを使用することができます。 この機能によりコマンドを反復したり監査したりできるようになるので、おそらく最も大きな利点の 1 つです。 多くのシステム (特に政府システム) では、すべてのものを追跡して評価する、つまり "監査する" 必要があります。 データベースの変更からスクリプトによって行われる変更まで、すべてのものが監査の対象になります。

機能

PowerShell と従来のシェルで共有されている機能がいくつかあります。

  • 組み込みヘルプ システム: ほとんどのシェルは何らかの種類のヘルプ システムを備えており、コマンドの詳細について学習できます。 たとえば、コマンドの動作やサポートされているパラメーターを調べることができます。 PowerShell のヘルプ システムでは、コマンドについての情報が提供され、オンライン ヘルプ記事とも統合されます。
  • パイプライン: 従来のシェルでは、多くのコマンドを順番に実行するためにパイプラインを使用します。 1 つのコマンドの出力が、次のコマンドの入力になります。 PowerShell の場合、従来のシェルと同様にこの概念が実装されていますが、テキストでオブジェクトが操作される点が異なります。 この機能については、このモジュールで後ほど詳しく説明します。
  • [エイリアス]: エイリアスは、コマンドを実行するために使用できる代わりの名前です。 PowerShell では、cls (clear the screen: 画面のクリア) や ls (list the files: ファイルの一覧表示) などの一般的なエイリアスの使用がサポートされています。 したがって、新しいユーザーでも、他のフレームワークに関する知識を使用でき、使い慣れたコマンドの PowerShell での名前を覚える必要はありません。

PowerShell には、従来のコマンド ライン シェルと異なる点がいくつかあります。

  • テキストを介してオブジェクトを操作します。 コマンド ライン シェルでは、出力と入力が異なる可能性があるスクリプトを実行する必要があるため、出力を書式設定し、必要なデータを抽出するのに、時間がかかることになります。 これに対し、PowerShell では、入力と出力としてオブジェクトが使用されます。 これは、書式設定と抽出の時間が短くなることを意味します。
  • コマンドレットがあります。 PowerShell のコマンドはコマンドレットと呼ばれています (コマンドレットと発音する)。 PowerShell では、コマンドレットは、他の多くのシェル環境のように、異なる実行可能ファイルではなく共通のランタイム上に構築されます。 この特性により、パラメーターの解析とパイプラインの動作で一貫したエクスペリエンスが提供されます。 コマンドレットは通常、オブジェクトの入力を受け取り、オブジェクトを返します。 PowerShell のコア コマンドレットは .NET Core に組み込まれており、オープンソースです。 コミュニティや他のソースのコマンドレット、スクリプト、関数をさらに使用することで、PowerShell を拡張することも、.NET Core や PowerShell で独自のコマンドレットを作成することもできます。
  • 多くの種類のコマンドがあります。 PowerShell のコマンドでは、ネイティブの実行可能ファイル、コマンドレット、関数、スクリプト、またはエイリアスを使用できます。 実行するすべてのコマンドは、これらの種類のいずれかに属します。 コマンドレットはコマンドの一種であるため、"コマンド" と "コマンドレット" は同じ意味で使用されることがよくあります。

インストール

このモジュールでは、お使いのコンピューターで PowerShell を使用する方法を練習します。 PowerShell は、さまざまなプラットフォームで使用できますが、 Linux、macOS、または古いバージョンの Windows が実行されているコンピューターを使用する場合は、インストールする必要があります。

PowerShell をインストールする手順は、OS によって異なります。 先に進む前に、少し時間を取って、PowerShell をインストールするか、PowerShell のインストールを確認してください。 インストールを確認する方法は、このモジュールの次のユニットで示されています。

Windows

Windows 8 以降を実行している場合は、Windows PowerShell と呼ばれるバージョンの PowerShell が既にインストールされているはずです。 このバージョンは、最新の PowerShell リリースとは若干異なりますが、学習目的では問題なく動作します。

Windows PowerShell は [スタート] メニューから開くことができます。

他のオペレーティング システム

Windows 8 以降以外のものがコンピューターで実行されている場合は、PowerShell をインストールする必要があります。 お使いの OS でのインストール手順については、「PowerShell のさまざまなバージョンのインストール」を参照してください。

Visual Studio Code 用 PowerShell 拡張機能

このモジュールの PowerShell スクリプトを作成してコマンドを実行するには、Visual Studio Code 用 PowerShell 拡張機能を使用することをお勧めします。 この拡張機能を使用すると、コマンドを実行できるほか、スニペット、コード補完、構文の強調表示にも役立ちます。