Sie sind auf Seite 1von 4

TEMA

about_PSSession_details
DESCRIPCIN BREVE
Proporciona informacin detallada sobre las sesiones de Windows
PowerShell y el papel que desempean en los comandos remotos.
DESCRIPCIN DETALLADA
Una sesin es un entorno en el que se ejecuta Windows PowerShell.
Se crea automticamente una sesin cada vez que inicia Windows
PowerShell. Puede crear sesiones adicionales, denominadas
"sesiones de Windows PowerShell" o "PSSessions", en su equipo o
en otro equipo.
A diferencia de las sesiones creadas por Windows PowerShell,
usted controla y administra las PSSessions que crea.
Las PSSessions desempean un papel importante en la comunicacin
remota. Cuando crea una PSSession que est conectada a un equipo
remoto, Windows PowerShell establece una conexin persistente al
equipo remoto para admitir la PSSession. Puede utilizar la
PSSession para ejecutar una serie de comandos, funciones y scripts que
comparten datos.
En este tema se proporciona informacin detallada sobre las sesiones y
PSSessions de Windows PowerShell. Para obtener informacin bsica
sobre las tareas que puede realizar con las sesiones, vea about_PSSessions.
ACERCA DE LAS SESIONES
Desde el punto de vista tcnico, una sesin es un entorno de
ejecucin en el que se ejecuta Windows PowerShell. Cada sesin
incluye una instancia del motor de System.Management.Automation y un
programa host en el que se ejecuta Windows PowerShell. El host puede
ser la consola de Windows PowerShell u otro programa que ejecute
comandos, como Cmd.exe, o bien, un programa generado para hospedar
Windows PowerShell, como Entorno de scripting integrado (ISE) de Windows
PowerShell. Desde el punto de vista de Windows, una sesin es un proceso de
Windows en el equipo de destino.
Cada sesin se configura de manera independiente. Incluye sus propias
propiedades, su propia directiva de ejecucin y sus propios perfiles.
El entorno que existe cuando se crea la sesin persiste durante toda
la sesin, incluso si se modifica el entorno en el equipo. Todas las
sesiones se crean en un mbito global, incluso las sesiones que se
crean en un script.
Puede ejecutar solo un comando (o una canalizacin de comandos) a
la vez en una sesin. Un segundo comando ejecutado sincrnicamente
(de uno en uno) espera durante un mximo de cuatro minutos hasta
que se complete el primer comando. Un segundo comando ejecutado
asincrnicamente (simultneamente) genera un error.
ACERCA DE LAS PSSESSIONS
Se crea una sesin cada vez que inicia Windows PowerShell. Windows
PowerShell crea sesiones temporales para ejecutar los comandos
individuales. Sin embargo, tambin puede crear sesiones (denominadas
"sesiones de Windows PowerShell" o "PSSessions")que usted controla y
administra.

Las PSSessions son muy importantes para los comandos remotos. Si


utiliza el parmetro ComputerName del cmdlet Invoke-Command o EnterPSSession, Windows PowerShell establece una sesin temporal para
ejecutar el comando y, a continuacin, cierra la sesin cuando se
completa el comando o la sesin interactiva.
Sin embargo, si utiliza el cmdlet New-PSSession para crear una
PSSession, Windows PowerShell establece una sesin persistente en
el equipo remoto donde puede ejecutar varios comandos o varias
sesiones interactivas. Las PSSessions que crea permanecen abiertas y
disponibles hasta que las elimine o cierre la sesin en la que se crearon.
Cuando crea una PSSession en un equipo remoto, el sistema crea un
proceso de PowerShell en el equipo remoto y establece una
conexin entre el equipo local y el proceso en el equipo remoto.
Cuando crea una PSSession en el equipo local, el nuevo proceso y las
conexiones se crean en el equipo local.
CUNDO SE NECESITA UNA PSSESSION?
Los cmdlets Invoke-Command y Enter-PSSession tienen parmetros ComputerName
y Session. Puede utilizar cualquiera de ellos para ejecutar un
comando remoto.
Use el parmetro ComputerName para ejecutar un solo comando o una
serie de comandos no relacionados en uno o varios equipos.
Para ejecutar comandos que comparten datos, necesita una conexin
persistente con el equipo remoto. En ese caso, cree una PSSession y, a
continuacin, utilice el parmetro Session para ejecutar los comandos
en la PSSession.
Muchos otros cmdlets que obtienen datos de equipos remotos, como
Get-Process, Get-Service, Get-EventLog y Get-WmiObject, tienen solo un
parmetro ComputerName. Utilizan tecnologas distintas de la
comunicacin remota de Windows PowerShell para recopilar datos de
manera remota. Estos cmdlets no tienen un parmetro Session, pero
puede usar el cmdlet Invoke-Command para ejecutar estos comandos
en una PSSession.
CMO SE CREA UNA PSSESSION?
Para crear una PSSession, utilice el cmdlet New-PSSession. Puede
utilizar New-PSSession para crear una PSSession en un equipo
local o remoto.
SE PUEDE CREAR UNA PSSESSION EN CUALQUIER EQUIPO?
Para crear una PSSession conectada a un equipo remoto, el equipo
debe estar configurado para la comunicacin remota en Windows
PowerShell. El usuario actual debe ser miembro del grupo
Administradores en el equipo remoto o debe poder proporcionar las
credenciales de un miembro del grupo Administradores. Para obtener ms
informacin, vea about_Remote_Requirements.
PUEDO VER LAS PSSESSIONS QUE OTROS USUARIOS HAN CREADO EN MI EQUIPO?
No. Puede obtener y administrar nicamente las PSSessions que ha
creado en la sesin actual. No puede ver las PSSessions que otros
usuarios han creado, incluso si ejecutan comandos en el equipo local.

SE PUEDE EJECUTAR UN TRABAJO EN SEGUNDO PLANO EN UNA PSSESSION?


S. Un trabajo en segundo plano es un comando que se ejecuta
asincrnicamente en segundo plano sin interactuar con la sesin
actual. Cuando se enva un comando para iniciar un trabajo, el
comando devuelve un objeto de trabajo, pero el trabajo contina
ejecutndose en segundo plano hasta que se complete.
Para iniciar un trabajo en segundo plano en un equipo local, use
el comando Start-Job. Puede ejecutar el trabajo en segundo plano
en una conexin temporal (mediante el parmetro ComputerName) o en una
PSSession (mediante el parmetro Session).
Para iniciar un trabajo en segundo plano en un equipo remoto,
utilice el cmdlet Invoke-Command con el parmetro AsJob o use el
cmdlet Invoke-Command para ejecutar un comando Start-Job en un
equipo remoto. Si utiliza el parmetro AsJob, puede utilizar los
parmetros ComputerName o Session.
Si utiliza Invoke-Command para ejecutar un comando Start-Job,
debe ejecutar el comando en una PSSession. Si utiliza el parmetro
ComputerName, Windows PowerShell finaliza la conexin cuando se
devuelve el objeto de trabajo y se interrumpe el trabajo.
Para obtener ms informacin, vea about_Jobs.
SE PUEDE EJECUTAR UNA SESIN INTERACTIVA?
S. Para iniciar una sesin interactiva con un equipo remoto, use
el cmdlet Enter-PSSession. En una sesin interactiva, los
comandos que se escriben se ejecutan en el equipo remoto como si
se hubieran escrito directamente en el equipo remoto.
Puede ejecutar una sesin interactiva en una sesin temporal
(mediante el parmetro ComputerName) o en una PSSession (mediante el
parmetro Session). Si utiliza una PSSession, la PSSession conserva
los datos de los comandos anteriores as como todos los datos
generados durante la sesin interactiva para que se puedan usar en
comandos posteriores.
Cuando finaliza la sesin interactiva, la PSSession permanece
abierta y disponible.
Para obtener ms informacin, vea Enter-PSSession and Exit-PSSession.
SE DEBEN ELIMINAR LAS PSSESSIONS?
S. Una PSSession es un proceso que se encuentra
que utiliza memoria y otros recursos, incluso si
Cuando termine de usar una PSSession, elimnela.
PSSessions, cierre las que no utilice y mantenga
las que est usando.

en un entorno autnomo
no se est usndola.
Si crea varias
abiertas solo

Para eliminar PSSessions, utilice el cmdlet Remove-PSSession.


Este cmdlet elimina las PSSessions y libera todos los recursos
usados por las mismas.
Tambin puede utilizar el parmetro TimeOut de New-PSSession para
cerrar una PSSession inactiva despus de un intervalo especificado.

Para obtener ms informacin, vea New-PSSession.


Si no elimina la PSSession o no establece un tiempo de espera, la
PSSession permanece abierta y disponible hasta que la cierre,
cierre la sesin en la que se cre o cierre Windows PowerShell.
Sin embargo, una PSSession en un equipo remoto se desconectar si
el equipo remoto no responde durante cuatro minutos. (El equipo
remoto est configurado de modo que enve una seal de actividad
cada tres minutos.)
Si guarda un objeto de PSSession en una variable y, a continuacin,
elimina la PSSession o deja que se agote el tiempo de espera,
la variable conservar el objeto PSSession pero la PSSession
no estar activa y no se puede utilizar ni reparar.
TODAS LAS SESIONES Y PSSESSIONS SON IGUALES?
No. Los programadores pueden crear sesiones personalizadas que
incluyen nicamente proveedores y cmdlets seleccionados. Si un comando
funciona en una sesin pero no en otra, puede ser debido a que la
sesin est restringida.
VEA TAMBIN
about_Jobs
about_PSSessions
about_Remote
about_Remote_Requirements
Invoke-Command
New-PSSession
Get-PSSession
Remove-PSSession
Enter-PSSession
Exit-PSSession

Das könnte Ihnen auch gefallen