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" で示す) を取得します。