Estamos acostumbrados a ejecutar de manera muy simple comandos en nuestra máquina local y si esto fuera tambien fácil de hacer respecto a otra máquina remota. Veamoslo con un sencillo script en bash (nota: necesitas tener “expect” instalado en tu máquina local).
Crea un script “execute.sh” con el siguiente contenido:
02 | HOST="aqui_pon_la_maquina_remota" |
03 | USER="aqui_pon_el_usuario_remoto" |
04 | PASS="aqui_pon_el_password_remoto" |
07 | spawn ssh -o StrictHostKeyChecking=no $USER@$HOST $CMD |
Y listo!, dale permisos de ejecución
$ chmod +x execute.sh
y ya puedes emplearlo, por ejemplo con:
$ ./execute.sh “ls -l”
Te mostrara un listado de archivos pero de la maquina remota.
Genial, para automatizar algunas tareillas.
Actualizado | Ya de paso y basandome en el ejemplo os dejo los scripts “download.sh” y “upload.sh” que acabo de implementar y pueden usarse para subir y bajar ficheros al servidor mediante scp.
09 | spawn scp -r $USER@$HOST:$CMD . |
10 | spawn scp -r $FICHEROS $USER@$HOST:$DIRECTORIO_REMOTO |