
Estoy accediendo a una máquina remota usando el comando ssh y un archivo pem. Mi código es el siguiente:
#!/bin/bash
ssh -i rijo.pem [email protected] <<EOF
sudo -s
var=`cat /opt/revsw-config/varnish/sites/rijotests4934567_revsw_net.json | egrep 'SERVER_NAME' | cut -b 19-44`
EOF
Cuando uso este script, no puedo almacenar el valor en la variable, pero si ejecuto el comando en la terminal funciona. Cuando ejecuto el script, aparece un No such file or directory found
error. ¿Puedes ayudarme en esto?
Respuesta1
El comando
cat /opt/revsw-config/varnish/sites/rijotests4934567_revsw_net.json | egrep 'SERVER_NAME' | cut -b 19-44
es ejecutadoen la zonaen su máquina, antes de enviarlo a ssh. Probablemente esto no sea lo que querías. El "documento aquí" realiza sustitución de variables y procesos, por lo que debe escapar de las comillas invertidas para obtener el resultado deseado.