Import-Clixml
CLIXML ファイルをインポートし、PowerShell で対応するオブジェクトを作成します。
構文
Import-Clixml
[-Path] <String[]>
[-IncludeTotalCount]
[-Skip <UInt64>]
[-First <UInt64>]
[<CommonParameters>]
Import-Clixml
-LiteralPath <String[]>
[-IncludeTotalCount]
[-Skip <UInt64>]
[-First <UInt64>]
[<CommonParameters>]
説明
Import-Clixml
コマンドレットは、Microsoft .NET Framework オブジェクトを表すデータを含む共通言語基盤 (CLI) XML ファイルをインポートし、PowerShell オブジェクトを作成します。 CLI の詳細については、「言語に依存する」を参照してください。
Windows コンピューターでの Import-Clixml
の重要な用途は、Export-Clixml
を使用してセキュリティで保護された XML としてエクスポートされた資格情報とセキュリティで保護された文字列をインポートすることです。 例については、例 2 を参照してください。
Import-Clixml
では、バイトオーダー マーク (BOM) を使用してファイルのエンコード形式を検出します。 ファイルに BOM がない場合は、エンコードが UTF8 であると見なされます。
例
例 1: シリアル化されたファイルをインポートし、オブジェクトを再作成する
この例では、Export-Clixml
コマンドレットを使用して、Get-Process
によって返されるプロセス情報のシリアル化されたコピーを保存します。
Import-Clixml
シリアル化されたファイルの内容を取得し、$Processes
変数に格納されているオブジェクトを再作成します。
Get-Process | Export-Clixml -Path .\pi.xml
$Processes = Import-Clixml -Path .\pi.xml
例 2: セキュリティで保護された資格情報オブジェクトをインポートする
この例では、$Credential
コマンドレットを実行して Get-Credential
変数に格納した資格情報を指定すると、Export-Clixml
コマンドレットを実行して資格情報をディスクに保存できます。
Von Bedeutung
Export-Clixml
は、Windows で暗号化された資格情報のみをエクスポートします。 macOS や Linux などの Windows 以外のオペレーティング システムでは、資格情報はプレーン テキストでエクスポートされます。
$Credxmlpath = Join-Path (Split-Path $Profile) TestScript.ps1.credential
$Credential | Export-Clixml $Credxmlpath
$Credxmlpath = Join-Path (Split-Path $Profile) TestScript.ps1.credential
$Credential = Import-Clixml $Credxmlpath
Export-Clixml
コマンドレットは、Windows Data Protection APIを使用して資格情報オブジェクトを暗号化します。
暗号化により、ユーザー アカウントのみが資格情報オブジェクトの内容を暗号化解除できるようになります。 エクスポートされた CLIXML
ファイルを別のコンピューターまたは別のユーザーで使用することはできません。
この例では、資格情報が格納されているファイルは TestScript.ps1.credential
で表されます。
TestScript を、資格情報を読み込むスクリプトの名前に置き換えます。
パイプラインの下に資格情報オブジェクトを送信して Export-Clixml
し、最初のコマンドで指定したパス ($Credxmlpath
) に保存します。
資格情報をスクリプトに自動的にインポートするには、最後の 2 つのコマンドを実行します。
Import-Clixml
を実行して、セキュリティで保護された資格情報オブジェクトをスクリプトにインポートします。 このインポートにより、スクリプト内のプレーンテキスト パスワードが公開されるリスクがなくなります。
パラメーター
-First
指定した数のオブジェクトのみを取得します。 取得するオブジェクトの数を入力します。
型: | UInt64 |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-IncludeTotalCount
データ セット内のオブジェクトの合計数を報告し、その後に選択したオブジェクトを報告します。 コマンドレットが合計カウントを特定できない場合は、不明な合計数 表示されます。 整数には、合計カウント値の信頼性を示す Accuracy プロパティがあります。
精度 の値は、0.0
から 1.0
までの範囲です。0.0
は、コマンドレットがオブジェクトをカウントできなかったことを意味 1.0
、カウントが正確であることを意味し、0.0
と 1.0
の間の値は、信頼性の高い推定値を示します。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-LiteralPath
XML ファイルへのパスを指定します。 Pathとは異なり、LiteralPath パラメーターの値は、型指定されたとおりに使用されます。 ワイルドカードとして解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、エスケープ シーケンスとして文字を解釈しないように PowerShell に指示します。
型: | String[] |
Aliases: | PSPath |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Path
XML ファイルへのパスを指定します。
型: | String[] |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Skip
指定した数のオブジェクトを無視し、残りのオブジェクトを取得します。 スキップするオブジェクトの数を入力します。
型: | UInt64 |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
Import-Clixml
へのパスを含む文字列をパイプライン処理できます。
出力
PSObject
Import-Clixml
格納された XML ファイルから逆シリアル化されたオブジェクトを返します。
メモ
パラメーターに複数の値を指定する場合は、コンマを使用して値を区切ります。 たとえば、<parameter-name> <value1>, <value2>
のようにします。