Comment exécuter un script powershell disponible sur une machine distante?
j'essayais d'exécuter un script dans un ordinateur distant.
je n'ai "Enable-PSremoting
" dans la machine distante.
j'ai placé un script hello.ps1
dans la machine à distance.
[Mon ordinateur client Windows XP et à distance de l'ordinateur est Windows 2003 ]
Puis, à partir de mon ordinateur client j'ai essayé d'exécuter le script.
invoke-command -computer $MachineName -filepath "C:hello.ps1"
j'ai l'erreur suivante.
Invoke-Command: impossible de trouver le chemin 'C:hello.ps1" parce qu'il ne pas exister.
je pense qu'il essaie de trouver un script à partir de l'ordinateur client.
Si j'essaie de le lancer
invoke-command -computer $MachineName -command { C:hello.ps1 }
, il exécute le script disponible sur la machine distante côté client.
mais je voudrais exécuter le script distant dans la machine distante elle-même.
Comment faire pour lancer le script disponible dans la machine distante?
mise à Jour:
en Fait, cette commande "invoke-command -computer $MachineName -command { C:hello.ps1 }
" travaille à distance et renvoie le résultat au côté client. J'ai mal compris en voyant les valeurs de retour qu'il exécute du côté du client.
4 réponses
Lorsque vous écrivez :
invoke-command -computer $MachineName -filepath "C:\hello.ps1"
le script C:\hello.ps1
seront prises à partir de l'ordinateur client et apporté au serveur pour être exécuté. Si vous avez l'erreur le fichier n'existe pas parce que Invoke-Command recherche le fichier dans l'ordinateur client.
j'ai eu la même erreur mais j'ai accroché une session distante dans une variable de votre code et finalement j'ai quelque chose qui fonctionne:
$s = New-PSSession -ComputerName "WTxxxxxL32" -Credential $credential
Invoke-Command -Session $s -Command {D:\ServerDLLDev\RemoteCOMInstall.ps1}
Il y a un million de solutons Invoke-etc mais le plus simple a finalement fonctionné pour moi. Merci à vous.