2015-02-04 5 views

ответ

1

У вас должно быть что-то прослушивание инструкции для запуска скрипта, а затем вам нужно отправить инструкцию.

Есть много подходов вы могли бы принять к этому, в том числе:

  • Запуск сервера SSH, а затем подключиться к нему с клиента SSH на машине окна
  • Запуск сервера HTTP, выполнив скрипт через FastCGI, а затем запрашивает URL для него из curl или браузер на компьютере Windows,
  • написание пользовательского протокола, прослушивания на сокете, а затем писать пользовательский клиент, который вы запускаете на машине Windows,
+1

psexec - разумная альтернатива ssh (на машине с Windows) – Sobrique

+0

Когда PowerShell 6 доступен, он может работать в системах Linux/UNIX. 'Invoke-Command' может запускать команды на удаленных машинах. https://github.com/PowerShell/PowerShell – lit

1

Абсолютно.

Вы можете использовать plink для запуска команд на сервере из Windows, при условии, что сервер работает sshd.

plink [email protected] echo hi 

Это напечатает «hi \ n» до стандартного вывода.

Замените /path/to/perl/script на echo выше и замените hi с любым аргументом командной строки, который необходим сценарию.

plink доступна здесь: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Одна поучительная личная записка от делать это много раз в том, что среда, в которой будет выполняться скрипт на Perl гораздо менее полным, чем то, что вы испытываете при входе в систему с помощью полного SSH и запуск команды в интерактивном режиме. Многие переменные среды, которые вы обычно ожидаете, не установлены.

Например, используя «set | wc -l» в приведенной выше команде, определяется только 39 переменных среды, но из интерактивного сеанса SSH определено 57 переменных среды. Вы должны убедиться, что ваш скрипт perl не зависит от переменной среды, которая не была установлена. Например, вам может потребоваться использование полных путей для любых используемых им модулей или с помощью флага -I в строке shebang, потому что @INC может быть не таким, каким вы ожидаете.

+0

Предполагая, что сервер работает sshd. – Sobrique

+0

@Sobrique true. –

Смежные вопросы