Thread ^C in Script abfangen, nach SIG{INT} weitere Befehle ausführen (6 answers)
Opened by YAPD at 2015-10-04 23:11

YAPD
 2015-10-04 23:11
#182498 #182498
User since
2015-09-20
146 Artikel
BenutzerIn

user image
Guten Abend,

ich habe ein Script dass verschiedene Schritte mit der exec() oder system() Befehl ausführen soll. Das Problem hierbei ist, dass einer der Befehle planmäßig nach der Ausführung im Leerlauf steht. Ich möchte aber nach diesem
Befehl noch weitere Schritte ausführen.

Ich habe erst den Einfall gehabt, dass ich den Befehl mit STRG + C abbrechen könnte. Aber dann wäre ja das ganze Script beendet. Also nutze ich

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
$SIG{INT}  = \&Signal_Handler;

sleep(20);

#Hier müsste ich die Eingabe von STRG + C, also ^C simulieren,
#damit er in die Sub Signal_Handler springt.

sub Signal_Handler
{
die "Erkennung des Signals : $!";
}

}


Aber dieses Simulieren der Eingabe ^C bekomme ich einfach nicht hin.

Ich hoffe, ihr könnt mir einen Tipp geben, wie ich das o.g.
umsetzen kann.

Viele Grüße
YAPD
Yet Another Perl Developer

View full thread ^C in Script abfangen, nach SIG{INT} weitere Befehle ausführen