Как вызвать Perl-скрипт на удаленном Unix-сервере из моей локальной системы - PullRequest
1 голос
/ 01 марта 2012

У меня есть сценарий perl, который должен выполняться для файлов журнала на удаленном сервере с моего локального рабочего стола. Может ли кто-нибудь предложить мне лучший подход.

Я использовал Net :: SFTP, но есть проблема с установкой пакета SFTP из CPAN. Есть ли в Perl хороший пакет для этой функции?

Можете ли вы сказать мне, хорошо ли следующие шаги?

  1. Открыть SFTP-соединение с удаленным сервером
  2. выполнить Perl в удаленном месте из установленного соединения. Любой пример кода для этого?

Ответы [ 3 ]

1 голос
/ 01 марта 2012

Если вы имеете в виду, что скрипт Perl находится на удаленном Unix-сервере, и вы хотите вызвать Perl-скрипт с вашего локального компьютера, то вы можете подключиться к удаленному Unix-серверу с помощью ssh, а затем, после подключения, вызвать свой Perl-скрипт с помощью perl yourscript.pl.

Если вы имеете в виду, что скрипт Perl находится на вашем локальном компьютере, и вы имеете дело с файлами журналов на удаленном сервере, то было бы более эффективно разместить скрипт Perl на удаленном сервере, который хранит журналы, и вызывать это так, как описано в предыдущем абзаце.

1 голос
/ 01 марта 2012

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

Так является одним из таких программ, но оно довольно новое и немного не хватает документации.

Rex является более зрелым, казалось бы, программным обеспечением для удаленного управления сервером.

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

0 голосов
/ 02 марта 2012

Вместо Net :: SFTP, попробуйте использовать Net :: SFTP :: Foreign или, если вы хотите запускать команды на удаленном хосте через SSH, Net :: SSH2 или Net :: OpenSSH .

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