Назад | Перейти на главную страницу

Как запустить сценарий PowerShell из сеанса Cygwin SSH?

У меня Windows Server 2003 с установленным CopSSH (Cygwin + sshd). W хотел бы иметь возможность запускать сценарий PowerShell через команду сеанса SSH, а затем использовать его вывод. Есть ли такая возможность? Как это сделать ?

Просто вызовите 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"

Затем мы можем запустить сценарий PowerShell, просто набрав в нашем сеансе SSH

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

Конечно, теперь мы можем использовать конвейер для использования вывода.

Мне просто интересно, почему я должен дважды нажать «Enter» в сеансе SSH после того, как набрал команду, чтобы он заработал.

Попробуйте без формата ввода

powershell.exe -inputformat none -noprofile echo hello

Может быть полезно, если не нужно доставлять файл на локальный компьютер.

Если вам нужно запустить powershell внутри cygwin / babun, следуйте https://code.google.com/p/mintty/issues/detail?id=56#c64 . Bascilly, загрузить или скомпилировать https://github.com/rprichard/winptyскопируйте его в свой $ PATH и запустите

console.exe powershell

Это также работает с пакетными скриптами, которые вызывают внутри PowerShell.