2010-12-16 3 views
0

У меня есть скрипт ksh 01.sh на сервере A, и мне нужно запустить его на сервере B с помощью ssh. Я не хочу копировать его на сервере B для его запуска. Кроме того, есть три аргумента, которые должны быть переданы при выполнении этого файла.Как запустить скрипт оболочки ksh на удаленном сервере

Я пробовал это, но он не работает. $ SSH ServerB /usr/ga/ctm/scripts/01.sh $ arg1 $ arg2 $ arg3 Ошибка: Файл 01.sh не найден на сервере B

Пожалуйста, руководство меня, как я могу это сделать?

ответ

1

Вы можете выполнить только файл на сервереB, если исполняемый файл находится в файловой системе serverB (или в его памяти как-то). Другого пути нет.

ОДНАКО: Если у вас есть netfs, вы можете ссылаться на файл на сервере A с сервераB. Например. делать:

ssh serverB /net/serverA/usr/ga/ctm/scripts/01.sh $arg1 $arg2 $arg3 

Вы должны убедиться, что netfs настроен правильно, чтобы ServerB прочитать файл из SERVERA. Почему вы не хотите копировать файл? Используйте scp, чтобы сделать это.

+0

Причина, по которой я не могу использовать scp, заключается в том, что у моей учетной записи не может быть разрешения на копирование файлов на удаленном сервере. Кроме того, имя удаленного сервера является динамическим, то есть этот скрипт будет работать на нескольких серверах. – Gaurav 2010-12-16 22:40:40

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