Combinando dois scripts em um

0

Eu tenho dois scripts. Ambos os scripts estão no mesmo servidor ( serverA )

O primeiro ( serverA ) estabelece uma conexão ssh com o outro servidor ( serverB ) e executa o segundo script,

por exemplo

*script1*
ssh $ipaddress var="$var1" "bash -s" < $script2
Em seguida,

script2 é executado em serverB .

Existe uma maneira de combinar isso em um script? Por isso, começaria fazendo a conexão ssh, depois executaria o resto do script, algo como:

#!/bin/bash

#Make an SSH Connection to another server
ssh $ipaddress

#Now Execute the rest of the script
do stuff here . . .
and here . . .
    
por IGGt 11.01.2016 / 15:28

2 respostas

1

ssh $ipaddress /bin/bash <<END
do stuff here . . .
and here . . .
END
    
por 11.01.2016 / 15:39
0

assumindo script2 no diretório local

#!/bin/bash
if scp script2 $ipaddress:/tmp
then
   ssh $ipaddress /tmp/script2 "arg" >& /my/result.$ipaddress
   ssh $ipaddress rm /tmp/script2 
fi

você pagará uma transferência extra, mas se script2 não for trivial (por exemplo, não apenas um tail ou wc ), pode valer a pena.

    
por 11.01.2016 / 15:58