Export-Clixml
개체 또는 개체의 XML 기반 표현을 만들어 파일에 저장합니다.
구문
Export-Clixml
[-Path] <String>
-InputObject <PSObject>
[-Depth <Int32>]
[-Force]
[-NoClobber]
[-Encoding <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Export-Clixml
-LiteralPath <String>
-InputObject <PSObject>
[-Depth <Int32>]
[-Force]
[-NoClobber]
[-Encoding <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
cmdlet은 Export-Clixml
개체를 CLI(공용 언어 인프라) XML 기반 표현으로 직렬화하여 파일에 저장합니다. 그런 다음 cmdlet을 Import-Clixml
사용하여 해당 파일의 내용에 따라 저장된 개체를 다시 만들 수 있습니다. CLI에 대한 자세한 내용은 언어 독립성(Language Independence)을 참조하세요.
이 cmdlet은 결과 XML을 파일에 저장한다는 점을 Export-Clixml
제외하고 유사ConvertTo-Xml
합니다. ConvertTo-XML
는 XML을 반환하므로 PowerShell에서 계속 처리할 수 있습니다.
Windows 컴퓨터에서 중요한 사용 Export-Clixml
은 자격 증명을 내보내고 문자열을 안전하게 XML로 보호하는 것입니다. 예제는 예제 3을 참조하세요.
예제
예제 1: XML 파일로 문자열 내보내기
다음은 현재 디렉터리에 저장되는 XML 파일을 만드는 예제로, 테스트인 문자열의 표현입니다.
"This is a test" | Export-Clixml -Path .\sample.xml
문자열 This is a test
이 파이프라인 아래로 전송됩니다. Export-Clixml
는 Path 매개 변수를 사용하여 현재 디렉터리에 이름이 지정된 sample.xml
XML 파일을 만듭니다.
예제 2: XML 파일로 개체 내보내기
이 예제에서는 개체를 XML 파일로 내보낸 다음 파일에서 XML을 가져와 개체를 만드는 방법을 보여 줍니다.
Get-Acl C:\test.txt | Export-Clixml -Path .\FileACL.xml
$fileacl = Import-Clixml -Path .\FileACL.xml
cmdlet은 Get-Acl
파일의 Test.txt
보안 설명자를 가져옵니다. 파이프라인 아래로 개체를 보내 보안 설명자를 전달합니다 Export-Clixml
. 개체의 XML 기반 표현은 이름이 지정된 FileACL.xml
파일에 저장됩니다.
cmdlet은 Import-Clixml
파일의 XML에서 개체를 FileACL.xml
만듭니다. 그런 다음 변수에 개체를 $fileacl
저장합니다.
예제 3: 내보낸 자격 증명 개체 암호화
이 예제에서는 cmdlet을 실행하여 변수에 $Credential
저장한 자격 증명이 Get-Credential
지정된 경우 cmdlet을 실행 Export-Clixml
하여 자격 증명을 디스크에 저장할 수 있습니다.
Important
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
cmdlet은 Export-Clixml
Windows Data Protection API를 사용하여 자격 증명 개체를 암호화합니다. 암호화를 사용하면 해당 컴퓨터의 사용자 계정만 자격 증명 개체의 내용을 해독할 수 있습니다.
내보낸 CLIXML
파일은 다른 컴퓨터나 다른 사용자가 사용할 수 없습니다.
예제에서 자격 증명이 저장되는 파일은 .로 표시됩니다 TestScript.ps1.credential
. TestScript를 자격 증명을 로드하는 스크립트의 이름으로 바꿉습니다.
자격 증명 개체를 파이프라인 Export-Clixml
아래로 보내고 첫 번째 명령에서 지정한 경로 $Credxmlpath
에 저장합니다.
자격 증명을 스크립트로 자동으로 가져오려면 마지막 두 명령을 실행합니다. 실행 Import-Clixml
하여 보안 자격 증명 개체를 스크립트로 가져옵니다. 이 가져오기를 사용하면 스크립트에서 일반 텍스트 암호를 노출할 위험이 없습니다.
매개 변수
-Confirm
cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Depth
XML 표현에 포함된 개체의 수준을 지정합니다. 기본값은 2
입니다.
파일의 개체 형식에 대해 기본값을 재정의할 Types.ps1xml
수 있습니다. 자세한 내용은 about_Types.ps1xml을 참조하세요.
형식: | Int32 |
Position: | Named |
Default value: | 2 |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Encoding
대상 파일의 인코딩 형식을 지정합니다. 기본값은 Unicode입니다.
이 매개 변수에 허용되는 값은 다음과 같습니다.
ASCII
ASCII(7비트) 문자 집합을 사용합니다.BigEndianUnicode
big-endian 바이트 순서로 UTF-16을 사용합니다.Default
시스템의 활성 코드 페이지(일반적으로 ANSI)에 해당하는 인코딩을 사용합니다.OEM
시스템의 현재 OEM 코드 페이지에 해당하는 인코딩을 사용합니다.Unicode
little-endian 바이트 순서로 UTF-16을 사용합니다.UTF7
UTF-7을 사용합니다.UTF8
UTF-8을 사용합니다.UTF32
little-endian 바이트 순서로 UTF-32를 사용합니다.
형식: | String |
허용되는 값: | ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | Unicode |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Force
사용자 확인을 요청하지 않고 명령을 강제 실행합니다.
필요한 경우 cmdlet이 출력 파일의 읽기 전용 특성을 지우도록 합니다. 명령이 완료되면 cmdlet이 읽기 전용 특성을 다시 설정하려고 합니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-InputObject
변환할 개체를 지정합니다. 개체를 포함하는 변수를 입력하거나 개체를 가져오는 명령 또는 식을 입력하세요. 개체를 으로 파이프할 Export-Clixml
수도 있습니다.
형식: | PSObject |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-LiteralPath
개체의 XML 표시를 저장할 파일 경로를 지정합니다. Path와 달리 LiteralPath 매개 변수의 값은 입력된 대로 정확하게 사용됩니다. 와일드카드로 해석되는 문자는 없습니다. 경로에 이스케이프 문자가 포함된 경우 작은따옴표로 묶습니다. 작은따옴표는 PowerShell에 문자를 이스케이프 시퀀스로 해석하지 않도록 지시합니다.
형식: | String |
별칭: | PSPath |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NoClobber
cmdlet이 기존 파일의 내용을 덮어쓰지 않음을 나타냅니다. 기본적으로 지정된 경로 Export-Clixml
에 파일이 있는 경우 경고 없이 파일을 덮어씁니다.
형식: | SwitchParameter |
별칭: | NoOverwrite |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Path
개체의 XML 표시를 저장할 파일 경로를 지정합니다.
형식: | String |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet은 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
이 cmdlet에 개체를 파이프라인할 수 있습니다.
출력
이 cmdlet은 저장된 데이터를 사용하여 만든 파일을 나타내는 FileInfo 개체를 반환합니다.
관련 링크
PowerShell