войдите на удаленный компьютер и запустите скрипт [duplicate]

1

У меня есть одна центральная машина и несколько удаленных компьютеров. Конфигурированные подключения без пароля к удаленным компьютерам с центральной машины.

Мне нужно войти с центрального vm в удаленный vm и выполнить скрипт в удаленном vm

Ниже приведен пример того, что я пытаюсь

Центральная машина:

#!/bin/sh
ssh root@remotemachine1
#run runscript.py in remotemachine1
ssh root@remotemachine2
#run runscript.py in remotemachine2

Удаленная машина

python runscript.py

runscript.py

device = ["device1","device2","device3"]
for i, x enumerate(device):
    print "{}. {}".format(i+1, x)
select_device = raw_input("Choose Device: ")
print "You Selected Device {}".format(device[int(select_device) - 1])
do something
....
....
....
....

repeat = raw_input("Do you want to repeat? Y/N:")
do something
........
........
........

Кто-то поможет мне войти и запустить скрипт в машине remote1 и выйти из машины remote1 и запустить скрипт в машине remote2.

  • 1
    анзибль? это выглядит как типичное использование secenairo
  • 0
    Не уверен, что планировщик заданий PBS может помочь.
Показать ещё 6 комментариев
Теги:
ssh

1 ответ

1
Лучший ответ

Вы можете выполнить следующую команду

ssh  $DEST_USER@$DEST_MACHINE "python -u path_to_your_script.py"

Если вашего сценария там нет, убедитесь, что вы сначала загрузите скрипт с помощью scp, а затем выполните команду выше.

device = ["device1","device2","device3"]
for i, x in enumerate(device):**
    print ("{}. {}".format(i+1, x))
select_device = raw_input("Choose Device: ")
print "You Selected Device {}".format(device[int(select_device) - 1])
  • 0
    Но, как пользователь будет передавать входные данные во время выполнения
  • 1
    -u вариант позаботится об этом. Пожалуйста, попробуйте. Похоже, работает нормально через SSH
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню