Нажмите скрипт в удаленной системе, затем запустите его - PullRequest
0 голосов
/ 15 февраля 2012

Я пишу Java-программу, которая поможет автоматизировать несколько задач. В одной из этих задач мне нужно перенести скрипт bash в удаленную систему Linux (java-программа будет работать в окне Windows), а затем запустить скрипт. У кого-нибудь есть и идея, как можно поступить так?

Я изучил Jsch, но документация ужасна, и мне невероятно трудно реализовать то, что я хочу сделать. Любые другие идеи или конкретные случаи использования?

РЕДАКТИРОВАТЬ: у меня только что была идея использовать Java для запуска пакета, который может сделать это. Свернуто да, но возможно возможно. Глядя на это сейчас.

1 Ответ

0 голосов
/ 15 февраля 2012

Я создал Javadoc для JSch , который должен помочь вам в этом. Для копирования вы должны использовать ChannelSftp, а затем ChannelExec для выполнения скрипта.

В качестве альтернативы, если вам не нужен скрипт на сервере, в зависимости от языка сценариев, вы можете предоставить весь сценарий в качестве «команды» ChannelExec (его команда выполняется пользователем оболочка по умолчанию, и я не думаю, что она имеет ограничение по размеру).

Если вы используете Perl или аналогичный интерпретатор, вы можете передать скрипт в качестве стандартного ввода (т. Е. Входного потока канала) в команду интерпретатора, которая должна позволять выполнять его «вживую».

...