Get-Content

指定された場所の項目の内容を取得します。

構文

Get-Content [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount <Int64>] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]

Get-Content [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount <Int64>] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]

説明

Get-Content コマンドレットは、ファイルに格納されているテキストなど、パスで指定された場所にある項目の内容を取得します。一度に 1 行の内容を読み込み、それぞれの行のオブジェクトを返します。

パラメーター

-Credential <PSCredential>

この処理を実行するアクセス許可を持つユーザー アカウントを指定します。既定値は現在のユーザーです。

"User01" や "Domain01\User01" のようなユーザー名を入力するか、Get-Credential コマンドレットで生成されるような PSCredential オブジェクトを入力します。ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。

このパラメーターは、Windows PowerShell でインストールされるプロバイダーではサポートされていません。

必須

false

位置

named

既定値

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

true (ByPropertyName)

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

false

-Exclude <string[]>

指定した項目を除外します。このパラメーターの値は、Path パラメーターを修飾します。"*.txt" などのパス要素またはパターンを入力します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

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

false

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

false

-Filter <string>

プロバイダーの形式や言語でフィルターを指定します。このパラメーターの値は、Path パラメーターを修飾します。ワイルドカードを使用できるかどうかなど、フィルターの構文はプロバイダーによって異なります。フィルターは他のパラメーターよりも効率が良い方法です。これは、オブジェクトを取得した後に Windows PowerShell がオブジェクトをフィルターするのではなく、オブジェクトを取得する際にプロバイダーがフィルターを適用するためです。

必須

false

位置

named

既定値

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

false

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

false

-Force

セキュリティが低下しない限り、このコマンドの正常な実行を妨げる制限を無効にします。たとえば、Force を指定すると、読み取り専用属性が無効になるか、ファイル パスを完成させるためにディレクトリが作成されますが、ファイルのアクセス許可は変更されません。

必須

false

位置

named

既定値

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

false

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

false

-Include <string[]>

指定した項目だけを取得します。このパラメーターの値は、Path パラメーターを修飾します。"*.txt" などのパス要素またはパターンを入力します。ワイルドカードを使用できます。

必須

false

位置

named

既定値

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

false

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

false

-LiteralPath <string[]>

項目のパスを指定します。Path と異なり、LiteralPath の値は入力したとおりに使用されます。ワイルドカードとして解釈される文字はありません。パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。単一引用符で囲んだ文字はエスケープ シーケンスとして解釈されません。

必須

true

位置

1

既定値

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

true (ByPropertyName)

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

false

-Path <string[]>

項目のパスを指定します。Get-Content は項目の内容を取得します。ワイルドカードを使用できます。パラメーター名 ("Path" または "FilePath") は省略可能です。

必須

true

位置

1

既定値

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

true (ByPropertyName)

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

false

-ReadCount <Int64>

パイプライン経由で、一度に何行の内容を送るかを指定します。既定値は 1 です。値が 0 (ゼロ) の場合は、すべての内容が一度に送信されます。

このパラメーターによって表示される内容が変わることはありませんが、内容を表示する時間には影響を与えます。ReadCount の値を大きくすると、最初の行を返すまでの時間は長くなりますが、処理全体の時間が短くなります。データ量が非常に多い項目では、かなりの違いになる場合があります。

必須

false

位置

named

既定値

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

true (ByPropertyName)

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

false

-TotalCount <Int64>

内容を何行取得するかを指定します。既定値は -1 (すべての行) です。

必須

false

位置

named

既定値

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

true (ByPropertyName)

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

false

-UseTransaction

コマンドを有効なトランザクションに含めます。このパラメーターは、トランザクションの進行中のみ有効です。詳細については、「about_Transactions」を参照してください。

必須

false

位置

named

既定値

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

false

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

false

<CommonParameters>

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

入力と出力

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

入力

なし

パイプを使用して入力を Get-Content に渡すことはできません。

出力

Object

Get-Content は、取得する内容を表すオブジェクトを返します。オブジェクトの型は、内容の型によって異なります。

Get-Content を組み込みエイリアス "cat"、"type"、および "gc" で参照することもできます。詳細については、「about_Aliases」を参照してください。

Get-Content コマンドレットは、プロバイダーによって公開されているデータを使用するように設計されています。セッションで使用可能なプロバイダーの一覧を表示するには、「Get-PsProvider」と入力します。詳細については、「about_Providers」を参照してください。

例 1

C:\PS>get-content -Path C:\Chapters\chapter1.txt

説明
-----------
このコマンドを実行すると、Chapter1.txt ファイルの内容がコンソールに表示されます。Path パラメーターを使用して項目の名前を指定しています。Get-Content は、実際には内容をパイプラインに渡しますが、他にパイプライン要素がないため、内容が書式設定されコンソールに表示されます。





例 2

C:\PS>get-content c:\Logs\Log060912.txt -totalcount 50 | set-content sample.txt

説明
-----------
このコマンドを実行すると、Log060912.txt ファイルの最初の 50 行が取得され、sample.txt ファイルに格納されます。このコマンドは、Get-Content コマンドレットを使用して、ファイルに格納されているテキストを取得します (省略可能な Path パラメーターの名前は指定されていません)。TotalCount パラメーターがあることで、取得する行数が最初の 50 行に制限されます。パイプライン演算子 (|) によって結果が Set-Content に送られ、sample.txt ファイルに格納されます。





例 3

C:\PS>(get-content cmdlets.txt -totalcount 5)[-1]

説明
-----------
このコマンドは、Cmdlets.txt テキスト ファイルの 5 行目を取得します。最初の 5 行は TotalCount パラメーターを使用して取得し、その後配列表記を使用してこのセットの最後の行 ("-1" で示す) を取得します。





関連項目

概念

about_Providers
Add-Content
Set-Content
Clear-Content