Вызов пакетного файла Windows из Linux - PullRequest
7 голосов
/ 26 октября 2008

У меня есть приложение, работающее только в Windows, и командный файл, который его запускает. Я хочу вызвать этот пакетный файл из Linux, то есть что-то вроде Linux-пакета запустит пакет Windows с параметрами, и это в свою очередь запустит мое приложение.

Могу ли я это сделать? Как?

Ответы [ 5 ]

12 голосов
/ 26 октября 2008

Вы можете установить ssh-сервер в окне Windows (у Cygwin есть один), затем из linux сделать что-то вроде:

ssh user@windows-box c:/path/to/batch.cmd

и это должно запустить ваше приложение в окне Windows.

1 голос
/ 26 октября 2008

Самый прямой способ - это, вероятно, установить ssh-сервер в Windows. Cygwin включает ssh-сервер.

В зависимости от того, насколько точны ваши временные потребности, вы можете иметь задание «at» в окне Windows, которое запускается периодически (каждые 5 минут?) И запускается, если обнаруживает, что конкретный файл существует, удаляя файл , Тогда вы можете использовать Samba / smbclient для создания файла. Чтобы это работало, вам нужно включить общий доступ к файлам в окне Windows.

Если в окне Windows есть веб-сервер, вы можете написать CGI и запустить его, используя wget или cURL .

0 голосов
/ 09 января 2014

Также посмотрите на winexe , который позволяет вам выполнять команды Windows / пакетные сценарии без запуска ssh-сервера.

0 голосов
/ 26 октября 2008

Это может вызвать проблему безопасности. Наш сотрудник по информационной безопасности не разрешил мне вызывать какие-либо программы напрямую.

Более безопасный способ - настроить сервер на компьютере Windows. Это может быть, например, веб-сервер. А затем вызовите ваш процесс внутри скрипта PHP / Perl / Python.

0 голосов
/ 26 октября 2008

Наш процесс сборки в настоящее время идет другим путем: сервер Windows запускает вещи на сервере Linux, используя plink (часть PuTTY ). Возможно, вы сможете установить что-то похожее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...