tarea scripts script programar programada habilitar ejemplos ejecutar ejecucion desde comandos bat powershell powershell-v2.0 powershell-remoting

scripts - ¿Cómo ejecutar un script powershell disponible en máquina remota?



programar en powershell (4)

Consulte aquí para un inicio rápido en el modo remoto de PowerShell .

Estaba tratando de ejecutar un script en una computadora remota.

Hice " Enable-PSremoting " en la máquina remota.

hello.ps1 un script hello.ps1 en la máquina remota.

[Mi máquina cliente es Windows XP y la computadora remota es Windows 2003]

Luego, desde la computadora de mi cliente, estaba tratando de ejecutar el script.

invoke-command -computer $MachineName -filepath "C:/hello.ps1"

Tuve el siguiente error.

Invocar-Comando: no se puede encontrar la ruta ''C: / hello.ps1'' porque no existe.

Creo que trata de encontrar el script desde la máquina del cliente.

Si intento correr

invoke-command -computer $MachineName -command { C:/hello.ps1 } , Ejecuta el script disponible en la máquina remota en el lado del cliente.

Pero me gustaría ejecutar el script remoto en la máquina remota.

¿Cómo hacer para ejecutar el script disponible en máquina remota?

Actualizado:

En realidad, este comando " invoke-command -computer $MachineName -command { C:/hello.ps1 } " funciona en el lado remoto y devuelve el resultado al lado del cliente. No entiendo bien al ver los valores de retorno que está ejecutando en el lado del cliente.


Cuando escribes :

invoke-command -computer $MachineName -filepath "C:/hello.ps1"

El script C:/hello.ps1 se tomará de la computadora del cliente y se llevará al servidor para su ejecución. Entonces, tienes el error. El archivo no existe porque Invoke-Command está buscando el archivo en la computadora del cliente.


Obtuve el mismo error pero conecté una sesión remota en una variable en tu código y finalmente tengo algo que funciona:

$s = New-PSSession -ComputerName "WTxxxxxL32" -Credential $credential Invoke-Command -Session $s -Command {D:/ServerDLLDev/RemoteCOMInstall.ps1}

Hay un millón de soluciones Invoke-etc pero las más simples funcionaron finalmente para mí. Gracias a ti.


Tuve exactamente la misma sonda y la resolví con una combinación de [WMICLASS] ''s create() y Start-Process .

Mira mi respuesta aquí .