• Publicidad

Enviar Ctrl+C desde script

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Enviar Ctrl+C desde script

Notapor carlitos2308 » 2015-05-25 12:51 @577

Buenos días.

Estimados, de nuevo molestando. Tengo un script que me hace varias revisiones en una máquina Linux, pero hay un comando en especial que al enviarlo se queda colgado y para salir de ese comando hay que hacer Ctrl+C desde el teclado.

El tema es que necesito enviar este Ctrl+C de una vez desde el script Perl para evitar que tenga que ser el usuario que lo haga sino más bien lo haga el script.

Si sirve de algo, el comando que envío es hastatus y el resultado es el siguiente:

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
maquina1:/home/xxx/scripts # hastatus
attempting to connect....
attempting to connect....connected


group           resource             system               message            
--------------- -------------------- -------------------- --------------------
                                     system1              RUNNING            
                                     system2              RUNNING            
group1                               system1              OFFLINE            
group1                               system2              ONLINE      
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Luego de mostrar esto, para volver al prompt "maquina1:/home/xxx/scripts #" es necesario hacer un Ctrl+C.

Como dato adicional, queda como corriendo como un proceso:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
ps -fea | grep hastatus
root     10904  1934  0 11:42 pts/0    00:00:00 hastatus
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


De antemano agradezco su ayuda.
carlitos2308
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-07-13 15:10 @673

Publicidad

Re: Enviar Ctrl+C desde script

Notapor explorer » 2015-05-25 13:29 @604

¿Has probado a ejecutar el comando hastatus con la opción -summary?

hastatus -summary

A lo mejor así sale inmediatamente.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Enviar Ctrl+C desde script

Notapor carlitos2308 » 2015-05-25 13:38 @610

Hola, explorer, gracias por tu pronta respuesta. Te comento que ese comando también me sirve. Sin embargo el comando hastatus trae mucha más información que al enviarle -summary, es por esa razón que necesito enviarlo solo como hastatus.

Quedo a la espera de tus valiosos comentarios.
carlitos2308
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-07-13 15:10 @673

Re: Enviar Ctrl+C desde script

Notapor explorer » 2015-05-25 13:54 @621

Bueno, para enviarle un Ctrl+C, en realidad lo que queremos hacer es enviarle la señal INT (interruption) al proceso hastatus.

Entonces, hay que averiguar el pid de ese proceso, y luego, desde nuestro programa, hacer un

kill INT, $pid;
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Enviar Ctrl+C desde script

Notapor carlitos2308 » 2015-05-25 14:08 @630

Gracias, explorer, veré si enviando la señal INT me funciona.
carlitos2308
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-07-13 15:10 @673


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 16 invitados