ssh, em seguida, uma vez conectado ssh para outro servidor e executar comandos e sair ambos

0

Estou tentando transformar o SSH em um servidor e o SSH em outro, e executar comandos no segundo servidor e sair de ambos depois.

até agora eu tenho

ssh [email protected] "ssh [email protected]; cd Dirk; source venv/bin/activate; python app.py; exit; exit;"

mas parece que não consigo executar comandos para o segundo servidor em que eu fiz desde o primeiro. Como eu faria isso?

    
por Daniel Plas Rivera 23.03.2017 / 21:37

2 respostas

0

Quando você executa apenas ssh user@host sem um comando dado como um argumento, como em sua chamada aninhada, o ssh iniciará um shell e aguardará comandos a serem digitados.

Os comandos de tubulação em ssh host1 ssh host 2 devem funcionar. Para usar o mesmo exemplo da sua pergunta:

echo "cd Dirk; source venv/bin/activate; python app.py" \
| ssh [email protected] ssh [email protected]
    
por 23.03.2017 / 21:43
0

ssh -t é talvez sua solução

ssh [email protected] -t "ssh [email protected] -t 'cd Dirk; source venv/bin/activate; python app.py; exit; exit;'"
    
por 24.03.2017 / 11:46

Tags