Puedes usar la ejecución de una subrutina cuando suceda esa interrupción (no probado):
Using perl Syntax Highlighting
#!perl
$SIG{INT} = \&Procesar_Interrupcion; # subrutina a ejecutar en la interrupción
while ($linea = <>) {
print "Has escrito: $linea";
last if $linea eq 'fin';
}
sub Procesar_Interrupcion {
print "Miau Miau!!!\n"; # Hacemos algo
$SIG{INT} = \&Procesar_Interrupcion; # Reactivamos la interrupción a la misma subrutina
}
Coloreado en 0.004 segundos, usando
GeSHi 1.0.8.4
Con esto, capturas la interrupción del programa. Si solo quisieras saber si están pulsadas, puedes usar el módulo
Term::ReadKey.