Creacion De Scripts Interactivos Sin Supervision Del Usuario


Objetivo: Creacion De Scripts Interactivos Sin Supervision Del Usuario
Hola, hoy os quería hablar de una herramienta que he encontrado por casualidad navegando por la red. Se llama “expect” y según su descripción viene a ser un “dialogo programado con procesos interactivos”.

¿Cuantas veces, realizando vuestros scripts en bash, se os requería la contraseña de Super Usuario y teníais que introducirla a mano? A primera vista tendríais que ejecutar ese script con privilegios de root, con el riesgo que eso conlleva…

Para evitar ese riesgo aparece expect. Expect os permite ejecutar comandos y esperar una salida determinada por stdout o consola, como queráis llamarlo. Una vez recibe esa cadena, continua con el resto de instrucciones y permite enviar señales por stdin o teclado.

Así a primera vista me parece un modo de comunicación síncrona entre varios procesos. Las funciones principales que usaremos, que no digo que sean las únicas, serán:

* spawn: Permite la ejecución de comandos por consola.
* expect: Espera por una cadena predefinida en stdout.
* send: Envía comandos por stdin con el proceso.

Si esta herramienta la combinamos con scripts nuestros, realmente se pueden hacer autenticas virguerias. A continuación os voy a poner un ejemplo muy básico que me he creado para subir ficheros por sftp con otro equipo:

#!/usr/bin/expect
spawn sftp 192.168.1.2
expect “mygnulinux@192.168.1.2’s password:”
send “mygnulinux\r”
expect “sftp>
send “cd /home/mygnulinux\r”
expect “sftp>
send “put *\r”
expect “sftp>
send “exit\r”
expect eof

Nota: Al finalizar pondremos “expect eof” para terminar la ejecución de expect. Cuando enviamos una señal debemos poner al final ‘\r’ que viene a ser el retorno de carro o intro para que sea aceptada en la linea de comandos.

Si alguien tiene algo nuevo que añadir o bien encuentra algún fallo me gustaría me corrigiese ya que no lo he probado mucho y no se en realidad cuanto poder tiene este comando.

http://mygnulinux.wordpress.com/200...on-del-usuario/

última edición por estrella_de_galicia el Jueves, 07 Enero 2010, 09:37; editado 1 vez
Objetivo: Re: Creacion De Scripts Interactivos Sin Supervision Del Usuario
Gran aportación, estrella_de_galicia. Me pongo a mirarlo, y si encuentro alguna cosa más interesante os lo comento.

Salu2, crack

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.0933s (PHP: -36% SQL: 136%)
Consultas SQL: 24 - Debug off - GZIP Activado