Réponses:
Il suffit d'invoquer powershell
avec les arguments pertinents et de le diriger où vous le souhaitez? Vous devez vous assurer que c'est PATH
bien sûr.
Barry Kelly a raison.
Vous devez utiliser mon logiciel wrapper qui crée une console cachée et exécute PowerShell dessus.
Ma page est ici: http://sergeybelous.com/shell-terminal/#proxywinconsole.exe
Quelqu'un a déjà trouvé mon logiciel wrapper et créé un didacticiel ici: http://ssh-with-powershell.blogspot.com/2013/07/enable-ssh-with-powershell-and-remove.html
Tout d'abord, il est bon d'ajouter le chemin exécutable de PowerShell à la variable d'environnement PATH de l'utilisateur. Nous le faisons en ajoutant à la ligne de fichier .bashrc de l'utilisateur comme:
export PATH=${PATH}:"/cygdrive/c/WINDOWS/system32/WindowsPowerShell/v1.0"
Ensuite, nous pouvons exécuter le script PowerShell en tapant simplement dans notre session SSH
powershell.exe -File "c:\u.ps1"
Bien sûr, nous pouvons maintenant le canaliser pour utiliser sa sortie.
Je me demande simplement pourquoi je dois appuyer deux fois sur "Entrée" dans ma session SSH après avoir tapé la commande pour que cela fonctionne.
echo "\n" | powershell.exe ...
Essayez-le sans format d'entrée
powershell.exe -inputformat none -noprofile echo hello
Peut être utile pour ne pas avoir à remettre un fichier à la machine locale.
Si vous devez exécuter PowerShell dans cygwin / babun, suivez https://code.google.com/p/mintty/issues/detail?id=56#c64 . Bascilly, downloard ou compilez https://github.com/rprichard/winpty , copiez-le dans votre $ PATH puis exécutez
console.exe powershell
Cela fonctionne également avec des scripts batch qui invoquent PowerShell à l'intérieur.