Vous êtes sur la page 1sur 8

TEMA

about_Windows_PowerShell_2.0
DESCRIPCIN BREVE
Describe las nuevas caractersticas que se incluyen en Windows
PowerShell 2.0.

DESCRIPCIN DETALLADA
Windows PowerShell 2.0 incluye varias caractersticas
significativas que amplan su utilizacin, mejoran su facilidad
de uso y permiten controlar y administrar entornos basados en
Windows de forma ms fcil y completa.
Windows PowerShell 2.0 es compatible con versiones anteriores.
Los cmdlets, proveedores, complementos, scripts, funciones y
perfiles que se disearon para Windows PowerShell 1.0 se pueden
usar en Windows PowerShell 2.0 sin cambios.
NUEVAS CARACTERSTICAS
Windows PowerShell 2.0 incluye las nuevas caractersticas siguientes.
Comunicacin remota

Windows PowerShell 2.0 permite ejecutar comandos en uno o
muchos equipos remotos con un solo comando. Se pueden ejecutar
comandos individuales o se puede crear una conexin persistente
(una sesin) para ejecutar una serie de comandos relacionados.
Tambin se puede iniciar una sesin con un equipo remoto para
que los comandos que se escriban se ejecuten directamente en el
equipo remoto.
Las caractersticas de comunicacin remota de Windows
PowerShell se basan en Administracin remota de Windows
(WinRM). WinRM es la implementacin de Microsoft del protocolo
WS-Management, un protocolo de comunicaciones compatible con
firewall y basado en SOAP estndar.
Los equipos remotos deben tener Windows PowerShell 2.0,
Microsoft .NET Framework 2.0 y el servicio WinRM. Los comandos
remotos se admiten en todos los sistemas operativos que pueden
ejecutar Windows PowerShell. El usuario actual debe tener
permiso para ejecutar comandos en los equipos remotos. Para
obtener ms informacin, vea about_Remote_Requirements.
Para admitir la comunicacin remota, se han agregado los
cmdlets Invoke-Command, Enter-PSSession y Exit-PSSession, junto
con otros cmdlets que contienen el sustantivo PSSession. Estos
cmdlets permiten crear y administrar conexiones persistentes.
El parmetro ComputerName tambin se ha agregado a varios
cmdlets, incluidos los cmdlets Get-Process, Get-Service y
Get-Eventlog. Este parmetro permite obtener informacin acerca
de los equipos remotos.
Estos cmdlets utilizan mtodos de .NET Framework para obtener
sus datos, por lo que no se basan en la comunicacin remota de
Windows PowerShell. No requieren nuevos programas ni una nueva
configuracin. Para obtener ms informacin, vea la Ayuda de
cada cmdlet.
Para obtener ms informacin sobre comandos remotos, vea
about_Remote y about_Remote_FAQ. Para obtener ms informacin
sobre sesiones, vea about_PSSessions.
ISE de Windows PowerShell

Windows PowerShell 2.0 incluye Entorno de scripting integrado
(ISE) de Windows PowerShell, una aplicacin host que permite
ejecutar comandos y disear, escribir, probar y depurar scripts
en un entorno grfico basado en Unicode y codificado por colores.

ISE de Windows PowerShell requiere Microsoft .NET Framework 3.0
o posterior.
ISE de Windows PowerShell incluye:
- Un Panel de comandos que permite ejecutar comandos
interactivos del mismo modo que se hara en la consola de Windows
PowerShell. Slo hay que escribir un comando y presionar ENTRAR.
El resultado aparece en el Panel de salida.
- Un Panel de scripts que permite componer, editar, depurar y
ejecutar funciones y scripts.
- Varias fichas, cada una con sus propios Panel de comandos y
Panel de scripts, que permiten trabajar en una o varias tareas
independientemente.
ISE de Windows PowerShell se ha diseado tanto para
principiantes como para usuarios expertos.
Trabajos en segundo plano

Los trabajos en segundo plano son comandos que se ejecutan
asincrnicamente. Cuando se ejecuta un trabajo en segundo
plano, el smbolo del sistema devuelve un resultado
inmediatamente, aunque el comando se est ejecutando todava.
Puede utilizar la caracterstica de trabajo en segundo plano
para ejecutar un comando complejo en segundo plano de modo que pueda
utilizar la sesin para otro trabajo mientras se ejecuta el comando.
Puede ejecutar un trabajo en segundo plano en un equipo local o
remoto y guardar los resultados despus tanto en uno como en
otro equipo. Para ejecutar un trabajo de forma remota, use el
cmdlet Invoke-Command.

Windows PowerShell incluye un conjunto de cmdlets que contienen el
sustantivo Job (cmdlets Job). Utilice estos cmdlets para crear, iniciar,
administrar y eliminar trabajos en segundo plano y para obtener los
resultados de un trabajo en segundo plano. Para obtener una lista de
los cmdlets de trabajo, escriba el comando siguiente:
get-command *-job

Para obtener ms informacin sobre los trabajos en segundo
plano, vea about_Jobs.
Depurador de scripts

Windows PowerShell 2.0 incluye un depurador basado en cmdlets
para scripts y funciones. El depurador es compatible con una
API pblica totalmente documentada que se puede utilizar para
generar un depurador propio o para personalizar o ampliar el
depurador.
Los cmdlets de depurador permiten establecer puntos de
interrupcin en lneas, columnas, variables y comandos. Estos
cmdlets permiten administrar los puntos de interrupcin y
mostrar la pila de llamadas. Puede crear puntos de interrupcin
condicionales y especificar acciones personalizadas en un punto de
interrupcin, como ejecutar scripts de diagnstico y de registro.
Cuando se alcanza un punto de interrupcin, Windows PowerShell
suspende la ejecucin e inicia el depurador. El depurador incluye un
conjunto de comandos personalizados que permiten recorrer paso a paso
el cdigo. Tambin puede ejecutar comandos de Windows PowerShell
estndar para mostrar los valores de variables, y utilizar cmdlets
para investigar los resultados.

Para obtener ms informacin sobre la depuracin, vea
about_Debuggers.
Seccin de datos

Los scripts diseados para Windows PowerShell 2.0 pueden tener
una o ms secciones de datos que aslan los datos de la lgica
de script. Los datos de esta nueva seccin se limitan a un
subconjunto especificado del lenguaje de scripting de Windows
PowerShell.
En Windows PowerShell 2.0, la seccin de datos se utiliza para
admitir la internacionalizacin de los scripts. Puede utilizar
esta seccin para aislar e identificar cadenas de mensajes de
usuario que se traducirn a varios idiomas de la interfaz de
usuario.
Para obtener ms informacin, vea about_Data_Sections.
Internacionalizacin de los scripts

Las caractersticas de internacionalizacin de los scripts de
Windows PowerShell 2.0 permiten atender mejor a los usuarios en
todo el mundo. La internacionalizacin de los scripts permite
que los scripts y las funciones muestren mensajes y texto de
Ayuda a los usuarios en varios idiomas.

Las caractersticas de internacionalizacin de los scripts
consultan la referencia cultural ($PsUICulture) de la interfaz
de usuario del sistema operativo durante la ejecucin y,
seguidamente, importan las cadenas de texto traducidas
adecuadas para poderlas mostrar al usuario.
La seccin de datos permite almacenar cadenas de texto
independientemente del cdigo para poderlas identificar
fcilmente. Un nuevo cmdlet, ConvertFrom-StringData, convierte
las cadenas de texto a tablas hash a modo de diccionario para
facilitar la traduccin.

Para obtener ms informacin, vea about_Script_Internationalization.
Cmdlets de WMI

La funcionalidad de Instrumental de administracin de Windows
(WMI) de Windows PowerShell 2.0 se ha mejorado con la
incorporacin de los cmdlets siguientes:
- Remove-WmiObject
- Set-WmiInstance
- Invoke-WmiMethod
Se han agregado nuevos parmetros al cmdlet Get-WmiObject.
Todos los cmdlets de WMI admiten ahora los parmetros siguientes:
- EnableAllPrivileges
- Impersonation
- Authentication
- Authority
Estos nuevos parmetros proporcionan un control ms exhaustivo
sobre la configuracin de seguridad de las operaciones de WMI
sin tener que trabajar directamente con los tipos de la
biblioteca de clases de .NET Framework.

Para obtener una lista de los cmdlets de WMI, escriba el
comando siguiente:
get-help *wmi*
Para obtener la Ayuda de cada cmdlet, escriba get-help seguido
del nombre del cmdlet.
El cmdlet Get-WinEvent

El cmdlet Get-WinEvent obtiene eventos de los registros del
visor de eventos y de los archivos de registro de eventos de
Seguimiento de eventos para Windows (ETW) en los equipos local
y remotos. Puede obtener eventos de los registros de eventos
clsicos y de los registros de eventos de Windows que se
introdujeron en Windows Vista.

Puede utilizar Get-WinEvent para obtener los objetos que
representan los registros de eventos, los proveedores de
registros de eventos y los eventos de los registros.
Get-WinEvent permite combinar eventos de orgenes diferentes en
un solo comando. Admite consultas avanzadas en Lenguaje de
rutas XML (Xpath), XML y formato de tabla hash.
Get-WinEvent requiere Windows Vista o Windows Server 2008 y
Microsoft .NET Framework 3.5.
El cmdlet Out-Gridview

El cmdlet Out-GridView muestra los resultados de otros comandos
en una tabla interactiva en la que se pueden buscar, ordenar,
agrupar y filtrar los resultados. Por ejemplo, se pueden enviar los
resultados de un comando Get-Process, Get-WmiObject, Get-WinEvent o
Get-Eventlog a Out-GridView y, a continuacin, utilizar las
caractersticas de tabla para examinar los datos.
help out-gridview -full
El cmdlet Add-Type

El cmdlet Add-Type permite agregar tipos de .NET Framework a Windows
PowerShell desde el cdigo fuente de otro lenguaje de .NET Framework.

Add-Type compila el cdigo fuente que crea los tipos y genera
ensamblados que contienen los nuevos tipos de .NET Framework. A
continuacin, puede utilizar los tipos de .NET Framework en
comandos de Windows PowerShell junto con los tipos de objetos
estndar proporcionados por .NET Framework.
Tambin puede utilizar Add-Type para cargar ensamblados en la
sesin con el fin de poder utilizar los tipos de los
ensamblados en Windows PowerShell.
Add-Type permite desarrollar nuevos tipos de .NET Framework,
utilizar tipos de .NET Framework en bibliotecas de C# y tener
acceso a APIs de Win32.

Para obtener ms informacin, vea Add-Type.
Notificacin de eventos

Windows PowerShell 2.0 introduce la notificacin de eventos.
Los usuarios pueden registrar y suscribirse a eventos, tales
como eventos de Windows PowerShell, eventos de WMI o eventos de .NET
Framework. Tambin pueden escuchar, reenviar y actuar en eventos de
administracin y del sistema tanto sincrnica como asincrnicamente.
Los programadores pueden escribir aplicaciones que utilizan la
arquitectura de eventos para recibir notificaciones sobre los
cambios de estado. Los usuarios pueden escribir scripts que se
suscriban a varios eventos y que reaccionen al contenido.

Windows PowerShell proporciona cmdlets que crean nuevos
eventos, obtienen eventos y suscripciones de eventos, registran
y eliminan del Registro eventos, esperan eventos y eliminan
eventos. Para obtener ms informacin sobre estos cmdlets,
escriba el comando siguiente:
get-command *-event

Mdulos

Los mdulos de Windows PowerShell permiten dividir y organizar
los scripts de Windows PowerShell en unidades independientes,
autnomas y reutilizables. El cdigo de un mdulo se ejecuta en
su propio contexto, por lo que no puede agregarse a, entrar en
conflicto con, ni sobrescribir las variables, funciones, alias
y dems recursos en la sesin.

Puede escribir, distribuir, combinar, compartir y reutilizar
mdulos para generar scripts simples y aplicaciones complejas.
Windows PowerShell 2.0 incluye cmdlets para agregar, obtener y
quitar mdulos, y para exportar miembros de mdulo. Para obtener ms
informacin sobre los cmdlets relacionados con mdulos, escriba el comando
siguiente:
get-command *-module*

Transacciones

Windows PowerShell 2.0 incluye compatibilidad con transacciones. Las
transacciones permiten deshacer una serie completa de operaciones.
Slo estn disponibles para operaciones que admiten transacciones. Se
han diseado para aplicaciones que requieren atomicidad, coherencia,
aislamiento y posibilidad de recuperacin, como bases de datos y
colas de mensajes.
Los cmdlets y proveedores que admiten transacciones tienen un nuevo
parmetro UseTransaction. Para iniciar una operacin dentro de una
transaccin, utilice el cmdlet Start-Transaction. A continuacin,
cuando utilice los cmdlets que realizan la operacin, use el parmetro
UseTransaction de cada cmdlet si desea que el comando forme parte de una
transaccin.
Si se produce un error en cualquier punto de la ejecucin de
cualquier comando en la transaccin, utilice el cmdlet
Rollback-Transaction para deshacer todos los comandos de la
transaccin.
Si todos los comandos se ejecutan correctamente, utilice el
cmdlet Commit-Transaction para que las acciones de los comandos sean
permanentes.
Windows PowerShell 2.0 incluye cmdlets para iniciar, usar,
confirmar y revertir transacciones. Para obtener informacin
sobre estos cmdlets, escriba el comando siguiente:
get-command *transaction*

Cambios importantes respecto a Windows PowerShell 1.0
-- El valor de la entrada del Registro PowerShellVersion en
HKLM\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine se ha cambiado
en 2.0.
-- Se han agregado nuevos cmdlets y variables. Estas
incorporaciones podran entrar en conflicto con variables y
funciones en perfiles y scripts.
-- El operador -IEQ realiza una comparacin sin distincin entre
maysculas y minsculas en caracteres.
-- El cmdlet Get-Command obtiene funciones de forma
predeterminada, adems de cmdlets.
-- Los comandos nativos que generan una interfaz de usuario no
se pueden canalizar al cmdlet Out-Host.
-- Las nuevas palabras clave de lenguaje Begin, Process, End y
Dynamic Param podran entrar en conflicto con palabras similares
utilizadas en scripts y funciones. La interpretacin de estas
palabras como palabras clave de lenguaje podran dar lugar a errores
en el anlisis.
-- La resolucin de nombres de cmdlets ha cambiado. En Windows
PowerShell 1.0, se generaba un error en tiempo de ejecucin
cuando dos complementos de Windows PowerShell exportaban
cmdlets con el mismo nombre. En Windows PowerShell 2.0, el
ltimo cmdlet que se agrega a la sesin se ejecuta cuando se
escribe el nombre de comando. Para ejecutar un comando que no
se ejecuta de forma predeterminada, se ha de calificar el
nombre de cmdlet con el nombre del complemento o mdulo en
que se ha originado.
-- Un nombre de funcin seguido de '-?' obtiene el tema de Ayuda
de la funcin, si existe uno en la funcin.
-- La resolucin de parmetros en mtodos de Microsoft .NET
Framework ha cambiado.
En Windows PowerShell 1.0, si se llamaba a un mtodo de .NET
sobrecargado que tuviera ms de una sintaxis, no se
notificaba ningn error. En Windows PowerShell 2.0 se
notifica un error de ambigedad.
Adems, en Windows PowerShell 2.0, el algoritmo para elegir
el mejor mtodo se ha revisado de forma apreciable para
minimizar el nmero de ambigedades.
-- Si est enumerando una coleccin en la canalizacin e intenta
modificar la coleccin en la canalizacin, Windows PowerShell
produce una excepcin.

Por ejemplo, los comandos siguientes funcionaran en Windows
PowerShell 1.0, pero no se ejecutaran correctamente despus
de la primera iteracin de canalizacin en Windows PowerShell 2.0.
$h = @{Name="Hello"; Value="Test"}
$h.keys | foreach-object {$h.remove($_)}
Para evitar este error, cree una subexpresin para el enumerador
utilizando los caracteres $(). Por ejemplo:
$($h.keys) | foreach-object {$h.remove($_)}
Para obtener ms informacin sobre Windows PowerShell 2.0, visite los sitios
web siguientes:
-- Sitio web de Windows PowerShell
http://go.microsoft.com/fwlink/?LinkID=106031
-- Blog de equipo de Windows PowerShell:
http://go.microsoft.com/fwlink/?LinkId=143696
VEA TAMBIN
about_Data_Sections
about_Debuggers
about_Functions_Advanced
about_Jobs
about_Join
about_PSSessions
about_Remote
about_Script_Internationalization
about_Split

Vous aimerez peut-être aussi