Windows Server 2003にCopSSHがインストールされています(Cygwin + sshd)。 Wは、SSHセッションコマンドを介してPowerShellスクリプトを実行し、その出力を使用できるようにしたいと考えています。そのような能力はありますか?どうやってするの ?
関連する引数を指定してpowershell
を呼び出し、必要な場所にパイプしますか?もちろんPATH
にあることを確認する必要があります。
バリーケリーは正しいです。
非表示のコンソールを作成し、その上でPowerShellを実行するラッパーソフトウェアを使用する必要があります。
私のページはここにあります: http://sergeybelous.com/Shell-terminal/#proxywinconsole.exe
誰かがすでに私のラッパーソフトウェアを見つけてここでチュートリアルを作成しました: http://ssh-with-powershell.blogspot.com/2013/07/enable-ssh-with-powershell-and-remove.html
まず、PowerShellの実行可能パスをユーザーのPATH環境変数に追加することをお勧めします。ユーザーの.bashrcファイル行に次のように追加することでそれを行います。
export PATH=${PATH}:"/cygdrive/c/WINDOWS/system32/WindowsPowerShell/v1.0"
次に、SSHセッションで入力するだけでPowerShellスクリプトを実行できます
powershell.exe -File "c:\u.ps1"
もちろん、これで出力を使用するようにパイプすることができます。
コマンドを入力した後、SSHセッションで「Enter」を2回押す必要があるのはなぜですか。
Inputformatなしで試してください
powershell.exe -inputformat none -noprofile echo hello
ローカルマシンにファイルを配信する必要がない場合に役立ちます。
Cygwin/babun内でpowershellを実行する必要がある場合は、 https://code.google.com/p/mintty/issues/detail?id=56#c64 に従ってください。基本的に、ダウンロードまたはコンパイル https://github.com/rprichard/winpty 、それを$ PATHにコピーして実行します
console.exe powershell
これは、内部でPowerShellを呼び出すバッチスクリプトでも機能します。