Microsoft .NET Framework オブジェクトをコンマ区切り値 (CSV) の可変長文字列に変換し、その文字列を CSV ファイルに保存します。
構文
Export-CSV [[-Delimiter] <char>] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-確認] [-WhatIf] [<CommonParameters>] Export-CSV [-UseCulture] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-確認] [-WhatIf] [<CommonParameters>]
説明
Export-CSV コマンドレットは、送信するオブジェクトを表すコンマ区切り (CSV) の可変長ファイルを作成します。
次に、Import-CSV コマンドレットを使用してファイル内の CSV 文字列からオブジェクトを再作成します。再作成されたオブジェクトは元のオブジェクトの CSV バージョンで、プロパティの値を表す文字列で構成され、メソッドはありません。
また、ConvertTo-CSV コマンドレットと ConvertFrom-CSV コマンドレットを使用して、.NET Framework オブジェクトを CSV 文字列に (またはその逆に) 変換できます。Export-CSV は、CSV 文字列をファイルに保存する点を除いて、ConvertTo-CSV と同じです。
Export-CSV コマンドレットのパラメーターを使用すると、コンマ以外の区切り文字を指定するか、現在のカルチャの既定の区切り文字を Export-CSV に使用させることができます。
複数のオブジェクトを Export-CSV に送信する場合、Export-CSV は、送信した最初のオブジェクトのプロパティに基づいてファイルを整理します。指定したプロパティが残りのオブジェクトにない場合、そのオブジェクトのプロパティ値は null で、コンマを 2 個並べて表記します。残りのオブジェクトに追加のプロパティがある場合、それらのプロパティ値はファイルに含まれません。
詳細については、「Export-CSV」とその「注」セクションを参照してください。
パラメーター
-Delimiter <char>
プロパティ値を区切る区切り文字を指定します。既定値はコンマ (,) です。コロン (:) などの文字を入力します。セミコロン (;) を指定するには、それを引用符で囲みます。
必須 |
false |
位置 |
2 |
既定値 |
, (comma) |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Encoding <string>
エクスポートされた CSV ファイルのエンコード方式を指定します。指定可能な値は、Unicode、UTF7、UTF8、ASCII、UTF32、BigEndianUnicode、Default、および OEM です。既定値は ASCII です。
必須 |
false |
位置 |
named |
既定値 |
ASCII |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Force
パスに指定されたファイルを上書きします。この場合、プロンプトは表示されません。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-InputObject <psobject>
CSV 文字列としてエクスポートするオブジェクトを指定します。オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。パイプを使用してオブジェクトを Export-CSV に渡すこともできます。
必須 |
true |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
true (ByValue, ByPropertyName) |
ワイルドカード文字を許可する |
false |
-NoClobber
既存のファイルを上書きしません (内容を置き換えません)。既定では、指定したパスにファイルが存在する場合、Export-CSV は警告なしにファイルを上書きします。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-NoTypeInformation
CSV ファイルから型の情報を省略します。既定では、CSV ファイルの先頭行に "#TYPE" に続いて .NET Framework オブジェクトの型の完全修飾名が含まれます。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Path <string>
CSV 出力ファイルのパスを指定します。このパラメーターは必須です。
必須 |
true |
位置 |
1 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-UseCulture
現在のカルチャの区切り記号を項目の区切り文字として使用します。既定値はコンマ (,) です。
このパラメーターは、スクリプトを世界各地のユーザーに配布する場合に特に役立ちます。カルチャの区切り記号を検索するには、(Get-Culture).TextInfo.ListSeparator コマンドを使用します。
必須 |
false |
位置 |
named |
既定値 |
Comma |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-確認
コマンドを実行する前に確認メッセージを表示します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
System.Management.Automation.PSObject パイプを使用してどの .NET Framework オブジェクトでも Export-CSV に渡すことができます。 |
出力 |
System.String CSV 一覧が Path パラメーターに指定されたファイルに送られます。 |
注
Export-CSV コマンドレットは、送信するオブジェクトをコンマ区切り (CSV) の可変長文字列に変換して、指定したテキスト ファイルに保存します。Export-CSV を使用してオブジェクトを CSV ファイルに保存してから、Import-CSV コマンドレットを使用して CSV ファイル内のテキストからオブジェクトを作成します。
CSV ファイルでは、各オブジェクトはオブジェクトのプロパティ値のコンマ区切り一覧で表されます。プロパティ値はオブジェクトの ToString() メソッドを使用して文字列に変換されるため、通常はプロパティ値の名前で表されます。Export-CSV はオブジェクトのメソッドをエクスポートしません。
エクスポートされたファイルの形式は次のとおりです。
-- CSV ファイルの先頭行には、#TYPE System.Diagnostics.Process のように、文字列 '#TYPE' に続いてオブジェクトの .NET Framework 型の完全修飾名が含まれます。この行を非表示にするには、NoTypeInformation パラメーターを使用します。
-- CSV ファイルの 2 行目は列ヘッダーを表しています。ここには、最初のオブジェクトのすべてのプロパティ名のコンマ区切り一覧が含まれます。
-- ファイルの追加行は、各オブジェクトのプロパティ値のコンマ区切り一覧で構成されます。
例 1
C:\PS>get-process wmiprvse | select-object basePriority,ID,SessionID,WorkingSet | export-csv -path data.csv 説明 ----------- このコマンドは、wmiprvse プロセスのプロパティをいくつか選択し、data.csv という名前の CSV 形式ファイルにエクスポートします。
例 2
C:\PS>get-process | export-csv processes.csv C:\PS> get-process | export-csv processes.csv # In processes.csv #TYPE System.Diagnostics.Process __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,... Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS... Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\... 説明 ----------- このコマンドは、コンピューター上のプロセスを表すオブジェクトを現在のディレクトリの Processes.csv ファイルにエクスポートします。区切り文字が指定されないため、ファイルのフィールドはコンマ (,) で区切られます。
例 3
C:\PS>get-process | export-csv processes.csv -Delimiter ";" # In processes.csv #TYPE System.Diagnostics.Process __NounName;Name;Handles;VM;WS;PM;NPM;Path;Company;CPU;FileVersion;... Process;powershell;626;201666560;76058624;61943808;11960;C:\WINDOWS... Process;powershell;257;151920640;38322176;37052416;7836;C:\WINDOWS\... 説明 ----------- このコマンドは、コンピューター上のプロセスを表すオブジェクトを現在のディレクトリの Processes.csv ファイルにエクスポートします。また、Delimiter パラメーターを使用してセミコロン (;) を指定します。その結果、ファイルのフィールドはセミコロン (;) で区切られます。
例 4
C:\PS>get-process | export-csv processes.csv -UseCulture 説明 ----------- このコマンドは、コンピューター上のプロセスを表すオブジェクトを現在のディレクトリの Processes.csv ファイルにエクスポートします。また、UseCulture パラメーターを使用して、現在のカルチャの ListSeparator プロパティで指定された区切り文字を使用するように Export-CSV に指示します。
例 5
C:\PS>get-process | export-csv processes.csv -NoTypeInformation C:\PS> get-process | export-csv processes.csv -NoTypeInformation # In processes.csv __NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,... Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS... Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\... 説明 ----------- このコマンドは、コンピューター上のプロセスを表すオブジェクトを現在のディレクトリの Processes.csv ファイルにエクスポートします。また、NoTypeInformation パラメーターを使用して、ファイルの型情報を非表示にします。
関連項目