Compartir a través de


Export-Clixml

Crea una representación basada en XML de un objeto u objetos y la almacena en un archivo.

Sintaxis

ByPath (valor predeterminado)

Export-Clixml
    [-Path] <String>
    -InputObject <PSObject>
    [-Depth <Int32>]
    [-Force]
    [-NoClobber]
    [-Encoding <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByLiteralPath

Export-Clixml
    -LiteralPath <String>
    -InputObject <PSObject>
    [-Depth <Int32>]
    [-Force]
    [-NoClobber]
    [-Encoding <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

El cmdlet Export-Clixml crea una representación basada en XML de Common Language Infrastructure (CLI) de un objeto u objetos y la almacena en un archivo. A continuación, puede usar el cmdlet Import-Clixml para volver a crear el objeto guardado en función del contenido de ese archivo. Para obtener más información sobre la CLI, consulte de independencia del lenguaje .

Este cmdlet es similar a ConvertTo-Xml, excepto que Export-Clixml almacena el XML resultante en un archivo. ConvertTo-XML devuelve el XML, por lo que puede seguir procesándolo en PowerShell.

Un uso valioso de Export-Clixml en equipos Windows es exportar credenciales y cadenas seguras de forma segura como XML. Para obtener un ejemplo, vea Ejemplo 3.

Ejemplos

Ejemplo 1: Exportar una cadena a un archivo XML

En este ejemplo se crea un archivo XML que almacena en el directorio actual, una representación de la cadena Esta es una prueba.

"This is a test" | Export-Clixml -Path .\sample.xml

Cadena Se trata de un de prueba que se envía a la canalización. Export-Clixml usa el parámetro Path para crear un archivo XML denominado sample.xml en el directorio actual.

Ejemplo 2: Exportación de un objeto a un archivo XML

En este ejemplo se muestra cómo exportar un objeto a un archivo XML y, a continuación, crear un objeto importando el XML desde el archivo.

Get-Acl C:\test.txt | Export-Clixml -Path .\FileACL.xml
$fileacl = Import-Clixml -Path .\FileACL.xml

El cmdlet Get-Acl obtiene el descriptor de seguridad del archivo Test.txt. Envía el objeto a la canalización para pasar el descriptor de seguridad a Export-Clixml. La representación basada en XML del objeto se almacena en un archivo denominado FileACL.xml.

El cmdlet Import-Clixml crea un objeto a partir del XML en el archivo FileACL.xml. A continuación, guarda el objeto en la variable $fileacl.

Ejemplo 3: Cifrado de un objeto de credencial exportado

En este ejemplo, dada una credencial que ha almacenado en la variable $Credential ejecutando el cmdlet Get-Credential, puede ejecutar el cmdlet Export-Clixml para guardar la credencial en el disco.

Importante

Export-Clixml solo exporta credenciales cifradas en Windows. En sistemas operativos que no son Windows, como macOS y Linux, las credenciales se exportan en texto sin formato.

$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

El cmdlet Export-Clixml cifra los objetos de credenciales mediante la API de protección de datos de Windows . El cifrado garantiza que solo la cuenta de usuario de ese equipo pueda descifrar el contenido del objeto de credencial. El archivo CLIXML exportado no se puede usar en un equipo diferente o en otro usuario.

En el ejemplo, el archivo en el que se almacena la credencial se representa mediante TestScript.ps1.credential. Reemplace testScript por el nombre del script por el que va a cargar la credencial.

Envíe el objeto de credencial a la canalización a Export-Clixmly guárdelo en la ruta de acceso, $Credxmlpath, que especificó en el primer comando.

Para importar automáticamente la credencial en el script, ejecute los dos comandos finales. Ejecute Import-Clixml para importar el objeto de credencial segura en el script. Esta importación elimina el riesgo de exponer contraseñas de texto sin formato en el script.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Depth

Especifica cuántos niveles de objetos contenidos se incluyen en la representación XML. El valor predeterminado es 2.

El valor predeterminado se puede invalidar para el tipo de objeto en los archivos Types.ps1xml. Para obtener más información, vea about_Types.ps1xml.

Propiedades de parámetro

Tipo:Int32
Valor predeterminado:2
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Encoding

Especifica el tipo de codificación para el archivo de destino. El valor predeterminado es unicode.

Los valores aceptables para este parámetro son los siguientes:

  • ASCII usa el juego de caracteres ASCII (7 bits).
  • BigEndianUnicode Usa UTF-16 con el orden de bytes big-endian.
  • valor predeterminado Usa la codificación que corresponde a la página de códigos activa del sistema (normalmente ANSI).
  • OEM Usa la codificación que corresponde a la página de códigos oem actual del sistema.
  • unicode usa UTF-16 con el orden de bytes little-endian.
  • UTF7 usa UTF-7.
  • UTF8 usa UTF-8.
  • UTF32 usa UTF-32 con el orden de bytes little-endian.

Propiedades de parámetro

Tipo:String
Valor predeterminado:Unicode
Valores aceptados:ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Obliga a que el comando se ejecute sin pedir confirmación del usuario.

Hace que el cmdlet borre el atributo de solo lectura del archivo de salida si es necesario. El cmdlet intentará restablecer el atributo de solo lectura cuando se complete el comando.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-InputObject

Especifica el objeto que se va a convertir. Escriba una variable que contenga los objetos, o escriba un comando o expresión que obtenga los objetos. También puede redirigir objetos a Export-Clixml.

Propiedades de parámetro

Tipo:PSObject
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:True
Valor de la canalización:True
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-LiteralPath

Especifica la ruta de acceso al archivo donde se almacenará la representación XML del objeto. A diferencia de path, el valor del parámetro LiteralPath se usa exactamente como se escribe. Ninguno de los caracteres se interpreta como caracteres comodín. Si la ruta de acceso incluye caracteres de escape, escríbala entre comillas simples. Las comillas simples indican a PowerShell que no interprete ningún carácter como secuencias de escape.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:PSPath

Conjuntos de parámetros

ByLiteralPath
Posición:Named
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-NoClobber

Indica que el cmdlet no sobrescribe el contenido de un archivo existente. De forma predeterminada, si existe un archivo en la ruta de acceso especificada, Export-Clixml sobrescribe el archivo sin advertencia.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:NoOverwrite

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Path

Especifica la ruta de acceso al archivo donde se almacenará la representación XML del objeto.

Propiedades de parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ByPath
Posición:0
Obligatorio:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

PSObject

Puede canalización de cualquier objeto para Export-Clixml.

Salidas

FileInfo

Export-Clixml crea un archivo que contiene el XML.