web-dev-qa-db-ja.com

Cygwin SSHセッションからPowerShellスクリプトを実行する方法は?

Windows Server 2003にCopSSHがインストールされています(Cygwin + sshd)。 Wは、SSHセッションコマンドを介してPowerShellスクリプトを実行し、その出力を使用できるようにしたいと考えています。そのような能力はありますか?どうやってするの ?

12
malloc4k

関連する引数を指定してpowershellを呼び出し、必要な場所にパイプしますか?もちろんPATHにあることを確認する必要があります。

11
ak2

バリーケリーは正しいです。

非表示のコンソールを作成し、その上でPowerShellを実行するラッパーソフトウェアを使用する必要があります。

私のページはここにあります: http://sergeybelous.com/Shell-terminal/#proxywinconsole.exe

誰かがすでに私のラッパーソフトウェアを見つけてここでチュートリアルを作成しました: http://ssh-with-powershell.blogspot.com/2013/07/enable-ssh-with-powershell-and-remove.html

9
Sergey

まず、PowerShellの実行可能パスをユーザーのPATH環境変数に追加することをお勧めします。ユーザーの.bashrcファイル行に次のように追加することでそれを行います。

export PATH=${PATH}:"/cygdrive/c/WINDOWS/system32/WindowsPowerShell/v1.0"

次に、SSHセッションで入力するだけでPowerShellスクリプトを実行できます

powershell.exe -File "c:\u.ps1"

もちろん、これで出力を使用するようにパイプすることができます。

コマンドを入力した後、SSHセッションで「Enter」を2回押す必要があるのはなぜですか。

6
malloc4k

Inputformatなしで試してください

powershell.exe -inputformat none -noprofile echo hello

ローカルマシンにファイルを配信する必要がない場合に役立ちます。

4
PatrickWalker

Cygwin/babun内​​でpowershellを実行する必要がある場合は、 https://code.google.com/p/mintty/issues/detail?id=56#c64 に従ってください。基本的に、ダウンロードまたはコンパイル https://github.com/rprichard/winpty 、それを$ PATHにコピーして実行します

console.exe powershell

これは、内部でPowerShellを呼び出すバッチスクリプトでも機能します。

3
Rolf