次の方法で共有


Format-List

出力の各プロパティは、新しい行に表示されるプロパティの一覧として書式設定されます。

構文

Format-List
      [[-Property] <Object[]>]
      [-GroupBy <Object>]
      [-View <string>]
      [-ShowError]
      [-DisplayError]
      [-Force]
      [-Expand <string>]
      [-InputObject <psobject>]
      [<CommonParameters>]

説明

Format-List コマンドレットは、コマンドの出力をプロパティの一覧として書式設定し、各プロパティを個別の行に表示します。 Format-Listを使用すると、オブジェクトのすべてのプロパティまたは選択したプロパティを一覧 (Format-List -Property *) として書式設定および表示できます。

テーブルよりもリスト内の各項目に使用できる領域が多いため、PowerShell ではリスト内のオブジェクトのプロパティが多く表示され、プロパティ値が切り捨てられる可能性は低くなります。

例 1: コンピューター サービスの書式設定

Get-Service | Format-List

このコマンドは、コンピューターのサービスに関する情報を一覧として書式設定します。 既定では、サービスは表として書式設定されます。 Get-Service コマンドレットは、コンピューター上のサービスを表すオブジェクトを取得します。 パイプライン 演算子 (|) は、結果をパイプラインを介して Format-Listに渡します。 次に、 Format-List コマンドは、一覧内のサービス情報を書式設定し、既定の出力コマンドレットに送信して表示します。

例 2: PS1XML ファイルのフォーマット

これらのコマンドは、PowerShell ディレクトリ内の PS1XML ファイルに関する情報を一覧として表示します。

$A = Get-ChildItem $pshome\*.ps1xml
Format-List -InputObject $A

最初のコマンドは、ファイルを表すオブジェクトを取得し、 $A 変数に格納します。

2 番目のコマンドでは、 Format-List を使用して、 $Aに格納されているオブジェクトに関する情報を書式設定します。 このコマンドは、 InputObject パラメーターを使用して変数を Format-Listに渡し、書式設定された出力を既定の出力コマンドレットに送信して表示します。

例 3: プロセスプロパティを名前で書式設定する

このコマンドは、コンピューター上の各プロセスの名前、基本優先度、および優先度クラスを表示します。

Get-Process | Format-List -Property Name, BasePriority, PriorityClass

Get-Process コマンドレットを使用して、各プロセスを表すオブジェクトを取得します。 パイプライン演算子 (|) は、パイプラインを介してプロセス オブジェクトを渡して Format-Listします。 Format-List は、指定されたプロパティの一覧としてプロセスを書式設定します。 Property パラメーター名は省略可能であるため、省略できます。

例 4: プロセスのすべてのプロパティを書式設定する

このコマンドは、Winlogon プロセスのすべてのプロパティを表示します。

Get-Process winlogon | Format-List -Property *

Get-Process コマンドレットを使用して、Winlogon プロセスを表すオブジェクトを取得します。 パイプライン演算子 (|) は、Winlogon プロセス オブジェクトをパイプラインを介して Format-List渡します。 このコマンドでは、 Property パラメーターを使用してプロパティを指定し、すべてのプロパティを示す * を指定します。 Property パラメーターの名前は省略可能であるため、省略してコマンドをFormat-List *として入力できます。 Format-List は、結果を既定の出力コマンドレットに自動的に送信して表示します。

例 5: 形式エラーのトラブルシューティング

次の例は、式を使用して DisplayError または ShowError パラメーターを追加した結果を示しています。

PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -DisplayError

DayOfWeek    : Friday
 $_ / $null  : #ERR

PC /> Get-Date | Format-List DayOfWeek,{ $_ / $null } -ShowError

DayOfWeek    : Friday
 $_ / $null  :

Failed to evaluate expression " $_ / $null ".
+ CategoryInfo          : InvalidArgument: (12/21/2018 7:59:23 AM:PSObject) [], RuntimeException
+ FullyQualifiedErrorId : PSPropertyExpressionError

パラメーター

-DisplayError

このコマンドレットがコマンド ラインにエラーを表示することを示します。 このパラメーターはほとんど使用されませんが、 Format-List コマンドで式を書式設定していて、式が機能していないように見える場合は、デバッグ支援として使用できます。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Expand

書式設定されたコレクション オブジェクトとコレクション内のオブジェクトを指定します。 このパラメーターは、 System.Collections.ICollection インターフェイスをサポートするオブジェクトを書式設定するように設計されています。 既定値は EnumOnly です。 このパラメーターの有効値は、次のとおりです。

  • EnumOnly. コレクション内のオブジェクトのプロパティを表示します。
  • CoreOnly. コレクション オブジェクトのプロパティを表示します。
  • Both. コレクション オブジェクトのプロパティと、コレクション内のオブジェクトのプロパティを表示します。
型:String
指定可能な値:CoreOnly, EnumOnly, Both
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Force

このコマンドレットがすべてのエラー情報を表示することを示します。 DisplayError または ShowError パラメーターと共に使用します。 既定では、エラー オブジェクトがエラー ストリームまたは表示ストリームに書き込まれると、一部のエラー情報のみが表示されます。

特定の .NET 型を書式設定する場合にも必要です。 詳細については、「メモ」セクションを参照してください。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-GroupBy

共有プロパティまたは値に基づいてグループで出力を指定します。 式または出力のプロパティを入力します。

GroupBy パラメーターの値には、新しい計算プロパティを指定できます。 計算プロパティには、スクリプト ブロックまたはハッシュ テーブルを指定できます。 有効なキーと値のペアは次のとおりです。

  • Name (または Label)- <string>
  • Expression - <string> または <script block>
  • FormatString - <string>

詳細については、「 about_Calculated_Properties」を参照してください。

型:Object
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

書式設定するオブジェクトを指定します。 オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。

型:PSObject
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Property

表示するオブジェクト プロパティと、その表示順序を指定します。 ワイルドカードを使用できます。

このパラメーターを省略した場合、表示されるプロパティは、表示されるオブジェクトに依存します。 パラメーター名 Property は省略可能です。 同じコマンドで Property および View パラメーターを使用することはできません。

Property パラメーターの値には、新しい計算プロパティを指定できます。 計算プロパティには、スクリプト ブロックまたはハッシュ テーブルを指定できます。 有効なキーと値のペアは次のとおりです。

  • Name (または Label)- <string>
  • Expression - <string> または <script block>
  • FormatString - <string>

詳細については、「 about_Calculated_Properties」を参照してください。

型:Object[]
配置:0
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:True

-ShowError

コマンドレットがパイプラインを介してエラーを送信することを示します。 このパラメーターはほとんど使用されませんが、 Format-List コマンドで式を書式設定していて、式が機能していないように見える場合は、デバッグ支援として使用できます。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-View

代替リストの形式またはビューの名前を指定します。 同じコマンドで Property および View パラメーターを使用することはできません。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

PSObject

任意のオブジェクトをこのコマンドレットにパイプできます。

出力

Microsoft.PowerShell.Commands.Internal.Format

このコマンドレットは、リストを表す書式オブジェクトを返します。

メモ

Windows PowerShell には、 Format-Listの次のエイリアスが含まれています。

  • fl

Format-Listなどの形式コマンドレットは、表示するデータを配置しますが、表示しません。 データは、PowerShell の出力機能と、Out-HostOut-FileなどのOut動詞 (Out コマンドレット) を含むコマンドレットによって表示されます。

format コマンドレットを使用しない場合、PowerShell では、表示されるオブジェクトごとに既定の形式が適用されます。

GroupBy パラメーターは、オブジェクトが並べ替えられていることを前提としています。 Format-Listを使用してオブジェクトをグループ化する前に、Sort-Objectを使用します。

View パラメーターを使用すると、テーブルの代替形式を指定できます。 PowerShell ディレクトリの *.format.PS1XML ファイルで定義されているビューを使用することも、新しい PS1XML ファイルに独自のビューを作成し、 Update-FormatData コマンドレットを使用して PowerShell に含めることもできます。

View パラメーターの代替ビューではリスト形式を使用する必要があります。それ以外の場合、コマンドは失敗します。 代替ビューがテーブルの場合は、 Format-Tableを使用します。 代替ビューがリストまたはテーブルでない場合は、 Format-Customを使用します。

Property パラメーターでFormat-Listを使用する場合は、次のいずれかの条件で Force パラメーターを含める必要があります。

  • 入力オブジェクトは、 ToString() メソッドを使用して帯域外で書式設定されます。 これは、[int][long]などの組み込みの数値型のスーパーセットである[string]および .NET プリミティブ型に適用されます。

  • 入力オブジェクトにはパブリック プロパティがありません。

  • 入力オブジェクトは、成功出力ストリーム以外の出力ストリームに PowerShell が使用するラッパー型のインスタンスです。 これは、これらのラッパー型が成功出力ストリームに送信される場合にのみ適用されます。そのためには、最初に ErrorVariable などの共通パラメーターを使用してキャプチャするか*>&1などのリダイレクトを使用する必要があります。