Sunteți pe pagina 1din 4

TEMA

about_Data_Sections
DESCRIPCIN BREVE
Explica las secciones de datos, que aslan cadenas de texto y
otros datos de solo lectura de la lgica del script.
DESCRIPCIN DETALLADA
Los scripts diseados para Windows PowerShell pueden tener una o ms
secciones de datos que solo contienen datos. Puede incluir una o ms
secciones de datos en cualquier script, funcin o funcin avanzada.
El contenido de la seccin de datos se limitan a un subconjunto
especificado del lenguaje de scripting de Windows PowerShell.
Separar los datos de la lgica del cdigo facilita la identificacin y
administracin tanto de la lgica como de los datos. Permite tener
archivos de recursos de cadena independientes para el texto, como los
mensajes de error y las cadenas de la Ayuda. Tambin asla la lgica
del cdigo, lo que facilita la seguridad y las pruebas de validacin.
En Windows PowerShell, la seccin de datos se utiliza para admitir la
internacionalizacin de los scripts. Las secciones de datos se pueden
utilizar para facilitar el aislamiento, la localizacin y el
procesamiento de las cadenas que se vayan a traducir a varios idiomas
de interfaz de usuario (IU).
La seccin de datos es una caracterstica de Windows PowerShell
2.0. Los scripts con secciones de datos no se ejecutan en Windows
PowerShell 1.0 sin revisin.
Sintaxis
La sintaxis porque una seccin de datos es la siguiente:
DATA [-supportedCommand <nombre-del-cmdlet>] {
<Contenido permitido>
}
Es necesario usar la palabra clave Data. No distingue entre
maysculas y minsculas.
El contenido permitido se limita a los elementos siguientes:
- Todos los operadores de Windows PowerShell, excepto -match
- Las instrucciones If, Else y ElseIf
- Las variables automticas siguientes: $PsCulture, $PsUICulture, $True,
$False y $Null
- Comentarios
- Canalizaciones
- Instrucciones separadas por signos de punto y coma (;)

- Literales, como el siguiente:


a
1
1,2,3
"Windows PowerShell 2.0"
@( "rojo", "verde", "azul" )
@{ a = 0x1; b = "magnfico"; c ="script" }
[XML] @'
<p> Hola mundo </p>
'@
- Cmdlets permitidos en la seccin de datos. De forma predeterminada,
solamente se permite el cmdlet ConvertFrom-StringData.
- Cmdlets que se permiten en una seccin de datos mediante el
parmetro SupportedCommand.
Cuando se utiliza el cmdlet ConvertFrom-StringData en una seccin
de datos, puede incluir los pares de clave/valor en cadenas entre
comillas simples o dobles, o en cadenas multilnea intercaladas
en el cdigo entre comillas simples o dobles. Sin embargo, las
cadenas que contienen variables y subexpresiones se deben incluir
en cadenas entre comillas simples o en cadenas multilnea
intercaladas en el cdigo entre comillas simples, para que las
variables no se expandan y las subexpresiones no sean ejecutables.
SupportedCommand
El parmetro SupportedCommand permite indicar que un cmdlet o
una funcin generan solamente datos. Se ha diseado para permitir la
inclusin de cmdlets y funciones en una seccin de datos escrita o
probada por el usuario.
El valor de SupportedCommand es una lista de uno o ms cmdlets
o nombres de funcin separados por comas.
Por ejemplo, la seccin de datos siguiente incluye un cmdlet
escrito por el usuario, Format-XML, que da formato a los datos de un
archivo XML:
DATA -supportedCommand Format-XML
{
Format-XML -strings string1, string2, string3
}

Utilizar una seccin de datos


Para utilizar el contenido de una seccin de datos, es preciso

asignarlo a una variable y utilizar la notacin de variable


para tener acceso al contenido.
Por ejemplo, la seccin de datos siguiente contiene un comando
ConvertFrom-StringData que convierte la cadena multilnea intercalada
en el cdigo en una tabla hash. La tabla hash se asigna a la variable
$TextMsgs.
La variable $TextMsgs no forma parte de la seccin de datos.
$TextMsgs = DATA {
ConvertFrom-StringData -stringdata @'
Text001 = Windows 7
Text002 = Windows Server 2008 R2
'@
}
Para tener acceso a las claves y los valores de una tabla hash
almacenada en $TextMsgs, se utilizan los comandos siguientes.
$TextMsgs.Text001
$TextMsgs.Text002

EJEMPLOS
Cadenas de datos simples.
DATA {
"Gracias por utilizar mi script Organize.pst de Windows
PowerShell". "Se proporciona gratuitamente a la comunidad."
"Agradezco sus observaciones y comentarios."
}
Cadenas que incluyen variables permitidas.
DATA {
if ($null) {
"Si desea obtener ayuda para este cmdlet, escriba get-help
new-dictionary." }
}
Una cadena multilnea intercalada en el cdigo entre comillas
simples que usa el cmdlet ConvertFrom-StringData:
DATA {
ConvertFrom-StringData -stringdata @'
Text001 = Windows 7
Text002 = Windows Server 2008 R2
'@
}

Una cadena multilnea intercalada en el cdigo entre comillas


dobles que usa el cmdlet ConvertFrom-StringData:

DATA {
ConvertFrom-StringData -stringdata @"
Msg1 = Para comenzar, presione cualquier tecla.
Msg2 = Para salir, escriba "salir".
"@
}

Una seccin de datos que incluye un cmdlet escrito por el usuario


que genera datos:
DATA -supportedCommand Format-XML {
Format-XML -strings string1, string2, string3
}
VEA TAMBIN
about_Automatic_Variables
about_Comparison_Operators
about_Hash_Tables
about_If
about_Operators
about_Quoting_Rules
about_Script_Internationalization
ConvertFrom-StringData
Import-LocalizedData

S-ar putea să vă placă și