ssh then once connected ssh to another server and execute commands and exit both

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

пока что у меня получилось

ssh user@example.edu "ssh user@example2.edu; cd Dirk; source venv/bin/activate; python app.py; exit; exit;"

но кажется, что я не могу выполнять команды для второго сервера, на который я зашел с первого. Как мне это сделать?

0
23.03.2017, 23:02
2 ответа

Когда вы запускаете просто ssh user@host без команды, указанной в качестве как в вашем вложенном вызове, ssh запустит оболочку и будет ожидать команды, которая будет набрана.

Ввод команд в ssh host1 ssh host 2 должен сработать. Чтобы использовать тот же пример, что и в вашем вопросе:

echo "cd Dirk; source venv/bin/activate; python app.py" \
| ssh user@example.edu ssh user@example2.edu
0
28.01.2020, 04:47

ssh -t , возможно, ваше решение

ssh user@example.edu -t "ssh user@example2.edu -t 'cd Dirk; source venv/bin/activate; python app.py; exit; exit;'"
0
28.01.2020, 04:47

Теги

Похожие вопросы