ho bisogno di usare una variabile a distanza e una variabile locale nello stesso comando ssh remotoSSH e variabili di ambiente remoto e locale
export CASSANDRA_DIR=/opt/cassandra
ssh [email protected] <<\EOF
export READ=$(grep IPADDR /etc/sysconfig/network-scripts/ifcfg-eth0 |awk -F= '{print $2}')
echo "listen_address: $READ" to directory "$CASSANDRA_DIR"
EOF
La variabile $ LEGGI sta lavorando bene, mentre la CASSANDRA_DIR non funziona. Il seguente funziona per CASSANDRA_DIR
ssh [email protected] echo "directory=$CASSANDRA_DIR"
grazie, Dean
Dove è definita la variabile '$ CASSANDRA_DIR'? –
Ho modificato il post per aggiungerlo. Viene da questo script (beh, in realtà è un po 'più complicato ma per tutti gli scopi intensivi è fondamentalmente impostato nello script locale e non in quello remoto.Inoltre, sto usando "clush" che esegue il comando ssh su molti server ma lo ssh non funziona quindi il Clush cmd non funzionerà –
Nit minore: 'grep ... | awk ...' può sempre essere unito come: 'awk -F = '/ IPADDR /' {print $ 2 } '/ etc/sysconfig/network-scripts/ifcfg-eth0' –