PowerShell でテーブルを作成する方法

  1. PowerShell でハッシュテーブルを使用してテーブルを作成する
  2. DataTable オブジェクトを使用して PowerShell でテーブルを作成する
  3. Format-Table を使用して PowerShell でテーブルを作成する
  4. 結論
PowerShell でテーブルを作成する方法

データを明確かつ構造化された方法で整理し表示することは不可欠であり、テーブルはこれを達成するための広く認識された形式です。PowerShell では、他のプログラミング言語と同様に、テーブルを作成する能力は基本的です。

PowerShell でカスタムテーブルを作成するのは簡単なプロセスです。この記事では、PowerShell でテーブルを作成するためのさまざまな方法を探り、データの提示をより効果的にします。

PowerShell でハッシュテーブルを使用してテーブルを作成する

ハッシュテーブルは、各値をキーを使用して保存するコンパクトなデータ構造です。辞書または連想配列とも呼ばれます。

PowerShell では、@{} 構文を使用してハッシュテーブルを作成できます。キーと値は中括弧 {} で囲まれています。

コード:

$hash = @{Name = "brian"; Age = "23"; Location = "UK" }

上記のコードでは、@シンボルの後に中括弧 { } を使用してハッシュテーブルを作成します。中括弧内には、セミコロンで区切られた 3つのキーと値のペアがあります。

各キーは文字列(NameAgeLocation)で、続いて等号(=)と対応する値があります。

したがって、この行は次のキーと値のペアを持つハッシュテーブルを作成します:

  • キー Name の値 "brian"
  • キー Age の値 "23"
  • キー Location の値 "UK"

変数 $hash を使用してハッシュテーブルの内容を表示します。

$hash

出力:

Name                           Value
----                           -----
Name                           brian
Age                            23
Location                       UK

ハッシュテーブルは、キー用の 1 列と値用の別の列を持つ表形式で表示されます。

ただし、ハッシュテーブルは表示できるのが 2 列、つまりキー用と値用の列だけであることに注意する価値があります。要求が、異なる名前の列やより多くの列を含む場合、ハッシュテーブルは最も効果的な選択肢ではないかもしれません。

DataTable オブジェクトを使用して PowerShell でテーブルを作成する

DataTable オブジェクトは、PowerShell でテーブルを操作する際に非常に便利です。New-Object System.Data.Datatable コマンドを使用して DataTable を作成できます。

$TableName.Columns.Add("ColumnNames") を使用して列を追加し、$TableName.Rows.Add("ValueToColumns") を使用してテーブルに行を追加できます。

次の例では、System.Data.DataTable クラスから新しい DataTable$table)オブジェクトを作成しました。

次に、DataTable$table)オブジェクトに 3つの列と 3つの行を追加します。[void] は、これらのコマンドの出力を抑制するために使用されます。

最後に、変数 $table を使用して DataTable オブジェクトの内容を表示します。

コード:

$table = New-Object System.Data.DataTable

[void]$table.Columns.Add("Name")
[void]$table.Columns.Add("Age")
[void]$table.Columns.Add("Location")

[void]$table.Rows.Add("brian", "23", "UK")
[void]$table.Rows.Add("sam", "32", "Canada")
[void]$table.Rows.Add("eric", "25", "USA")

$table

出力:

Name  Age Location
----  --- --------
brian 23  UK
sam   32  Canada
eric  25  USA

出力には、DataTable オブジェクトを使用して生成されたテーブルが表示されます。この方法では、複数の列およびカスタム列名のテーブルを作成できますが、列とそれに対応する値の両方を手動で追加する必要があります。

Format-Table を使用して PowerShell でテーブルを作成する

Format-Table コマンドレットを使用して、コンソールでデータをテーブルとしてフォーマットおよび表示できます。テーブルオブジェクトを作成するわけではありませんが、コンソールでデータを表形式で提示するのに便利です。

コード:

Get-Process | Format-Table -Property Name, Id, CPU

上記の例では、Get-Process を使用して実行中のプロセスに関する情報を取得します。Get-Process の出力は、実行中のプロセスのリストです。

次に、Get-Process の出力を Format-Table コマンドレットにパイプし、フォーマットします。各プロセスの特定のプロパティをテーブル形式で表示したいと考えています。

次に、-Property パラメーターを使用してテーブルに含めるプロパティを指定します。この場合、NameIdCPU プロパティを含めたいと考えています。

出力:

Name                    Id        CPU
----                    --        ---
ACCStd                4084   11.15625
ACCSvc                2620
amdfendrsr            2596
AMDRSServ            10772    47.6875

出力には、実行中のプロセスに関する情報が表示されます。それぞれの行は異なるプロセスを表します。

すべてのプロセスが CPU 列に値を持つわけではないことに注意してください。一部のプロセスは CPU リソースを消費しないため、出力の CPU 列が空白のままになることがあります。

結論

PowerShell でテーブルを作成するのは簡単で多目的であり、さまざまなデータ提示のニーズに対応します。基本的なキーと値のペアにはハッシュテーブル、複数の列とカスタム名を持つ高度なテーブルには DataTable オブジェクト、コンソールでデータをきれいに表示するには Format-Table コマンドレットを使用できます。

これらの方法により、データの可読性と整理を向上させ、最終的には PowerShell スクリプトをより効果的かつユーザーフレンドリーにすることができます。

チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website