Out-String

オブジェクトを一連の文字列としてホストに送ります。

構文

Out-String [-InputObject <psobject>] [-Stream] [-Width <int>] [<CommonParameters>]

説明

Out-String コマンドレットは、Windows PowerShell が管理するオブジェクトを文字列の配列に変換します。既定では、Out-String は文字列をまとめて単一の文字列として返しますが、stream パラメーターを使用すると、文字列を一度に 1 つずつ返すよう Out-String に指示することができます。オブジェクト操作が煩雑である場合は、このコマンドレットを使用して、従来のシェルと同じ方法で文字列出力の検索および操作を行うことができます。

パラメーター

-InputObject <psobject>

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

必須

false

位置

named

既定値

パイプライン入力を許可する

true (ByValue)

ワイルドカード文字を許可する

false

-Stream

オブジェクトごとに文字列を送ります。既定では、各オブジェクトの文字列は単一の文字列にまとめられて送られます。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

-Width <int>

出力行の文字数を指定します。この文字数を超えた場合、それ以降の文字は折り返されずに切り捨てられます。このパラメーターを省略した場合、行の幅はホストの特性で決定されます。PowerShell.exe ホストの既定値は 80 (文字) です。

必須

false

位置

named

既定値

パイプライン入力を許可する

false

ワイルドカード文字を許可する

false

<CommonParameters>

このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。詳細については、次を参照してください: about_Commonparameters.

入力と出力

入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。

入力

System.Management.Automation.PSObject

パイプを使用して、オブジェクトを Out-String に渡すことができます。

出力

System.String

Out-String は、入力オブジェクトから作成した文字列を返します。

Out という動詞を含むコマンドレット (Out コマンドレット) はオブジェクトを書式設定しません。オブジェクトをレンダリングし、指定された表示先に送るだけです。書式設定されていないオブジェクトを Out コマンドレットに送ると、Out コマンドレットはこのオブジェクトをレンダリングする前に書式設定用コマンドレットに送ります。

Out コマンドレットには、名前またはファイル パス用のパラメーターがありません。Out コマンドレットにデータを送るには、Windows PowerShell コマンドの出力をコマンドレットに送るパイプライン演算子 (|) を使用します。InputObject パラメーターを使用すると、変数に保存したデータをコマンドレットに渡すこともできます。詳細については、例を参照してください。

例 1

C:\PS>get-content C:\test1\testfile2.txt | out-string

説明
-----------
このコマンドは、Testfile2.txt ファイルの内容を単一の文字列としてコンソールに送ります。Get-Content コマンドレットを使用してファイルの内容を取得しています。取得されたファイルの内容はパイプライン演算子 (|) によって Out-String に送られ、単一の文字列としてコンソールに送られます。





例 2

C:\PS>$c = get-culture | select-object *

C:\PS> out-string -inputobject $c -width 100

説明
-----------
これらのコマンドは、現在のユーザーの地域設定を取得し、そのデータを文字列に変換します。最初のコマンドは、Get-Culture コマンドレットを使用して地域設定を取得します。結果はパイプライン演算子 (|) によって Select-Object コマンドレットに送られ、Get-Culture が取得したカルチャ オブジェクトのすべて (*) のプロパティが選択されます。次に、選択されたプロパティが $c 変数に保存されます。

2 番目のコマンドは、Out-String を使用して、CultureInfo オブジェクトを一連の文字列に変換します (プロパティごとに 1 つの文字列に変換されます)。また、InputObject パラメーターを使用して Out-String に $c 変数を渡します。文字列が切り詰められないよう、width パラメーターは 1 行あたり 100 文字に設定されています。





例 3

C:\PS>get-alias | out-string -stream | select-string "Get-Command"

説明
-----------
このコマンドは、"Get-Command" という語句を含むエイリアスを表示します。このコマンドは、Get-Alias コマンドレットを使用して一連の AliasInfo オブジェクトを取得します (現在のセッションのエイリアスごとに 1 つ取得します)。この例は、オブジェクトの操作と文字列の操作の違いを示しています。

Get-Alias の出力はパイプライン演算子 (|) によって Out-String に送られ、オブジェクトが一連の文字列に変換されます。Stream パラメーターを指定しているため、文字列は単一の文字列にまとめられるのではなく、文字列ごとに個別に送られます。もう 1 つのパイプライン演算子では、文字列が Select-String に送られ、"Get-Command" を含む文字列が選択されています。

Stream パラメーターを省略した場合、Out-String が返す単一の文字列内に "Get-Command" があることを Select-String が見つけるため、すべてのエイリアスが表示され、文字列は表形式で表示されます。





関連項目

概念

Out-File
Out-Null
Out-Host
Out-Printer
Out-Default