Как я могу запустить скрипт Python на компьютере с Windows из Linux, используя ssh в качестве фоновой задачи?

Я должен организовать некоторые задачи сценариев среди нескольких машин с Linux и Windows. ssh отлично работает на машинах Linux, поданных ниже:

ssh mysuser@targetLinuxmachine "python '/pathtomyscript/myscript.py' &"

Но тот же метод не работает в качестве фоновой задачи при отправке команды на компьютер с Windows. На машине с Windows у меня работает ssh-сервер и само ssh-соединение работает. Открытый ключ RSA также вставлен. На самом деле ниже команды запускаются:

ssh -n -f mysuer@targetwinmachine "python 'C:\Windowspath\myscript.py -someswitch parameter' &"

однако выполнение команды в bash перенесет мой терминал в консоль Windows и не позволит мне запустить его как фоновую задачу. Я думаю, "&" не работает на окнах для запуска команды в качестве фоновой задачи.

Как запустить эквивалентный сценарий на компьютере с Windows в качестве фоновой задачи?

4 ответа

Решение

Да, cygwin имеет очень хороший сервер SSH для Windows. Сначала вы должны скачать и установить это.

После того, как вы сможете войти в систему Windows с помощью командной строки ssh, вы можете использовать ssh-keygen сделать это без пароля и автоматически.

Третье, что нужно было установить Python на вашем компьютере с Windows, который вы можете получить от http://www.python.org/getit/windows/,

Это для меня непонятно, какой из этих шагов не работает, но, вероятно, ваша главная проблема с установкой сервера ssh на ваш компьютер с Windows. Можете ли вы войти на свой сервер с помощью командной строки ssh из окна unix/linux? Если нет, пожалуйста, обновите ваш вопрос, и я обновлю свой ответ.

Вы можете использовать Putty из командной строки:

plink mysuser@targetLinuxmachine "python '/pathtomyscript/myscript.py' &"

Ключами SSH можно управлять через PuttyAgent.

С помощью сценариев cgi с сервера apache отличный способ выполнить код на другом компьютере.

Так вы просто хотите запустить команду в фоновом режиме на Linux? Я думаю, вы просто ставите & в неправильном месте. Поместите & вне "":

ssh -n -f mysuer@targetwinmachine "python 'C:\Windowspath\myscript.py -someswitch parameter' " &
Другие вопросы по тегам