Enter-PSSession no funciona en mi script de Powershell


Cuando corro las siguientes líneas desde un script, el archivo termina siendo creado en mi máquina local.

$cred = Get-Credential domain\DanTest
Enter-PSSession -computerName xsappb01 -credential $cred

New-Item -type file c:\temp\blahxsappk02.txt

exit-pssession

Cuando corro cada línea individualmente desde la consola de powershell, la sesión remota se crea correctamente y el archivo se crea en el equipo remoto. ¿Alguna idea de por qué? ¿Es un problema de tiempo es el guión tal vez?

Author: Lars Truijens, 2010-09-14

1 answers

No estoy seguro de si es un problema de tiempo. Sospecho que es más como Enter-PSSession está invocando algo como un prompt anidado y sus comandos posteriores no se están ejecutando dentro de él. De todos modos, creo que Enter/Exit-PSSession es para uso interactivo, no para uso de scripts. Para los scripts use New-PSSession y pase esa instancia de sesión a Invoke-Command, por ejemplo:

$cred = Get-Credential domain\DanTest 
$s = New-PSSession -computerName xsappb01 -credential $cred
Invoke-Command -Session $s -Scriptblock {New-Item -type file c:\temp\blah.txt}
Remove-PSSession $s
 58
Author: Keith Hill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-15 05:43:45