Perl STRG+Z abfangen?

Bash, Shell, PHP, Python, Perl, CGI
alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover

Perl STRG+Z abfangen?

Post by alexander newald » 2005-11-05 11:00

Wie kann ich mir Perl STRG+Z abfangen (auf der Console)?

mausgreck
Posts: 84
Joined: 2005-03-19 17:22

Re: Perl STRG+Z abfangen?

Post by mausgreck » 2005-11-05 12:34

SIGTSTP mit sigprocmask() abfangen.

Hier ein C-Programm, Perl funktioniert sicher analog:

Code: Select all

/* 
 * Block ^Z in shells by blocking SIGTSTP
 * Compile with gcc -Wall -O3 test.c
 */
#include <signal.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>

int main()
{
    sigset_t sigset;

    sigemptyset(&sigset);
    sigaddset(&sigset, SIGTSTP);
    if(sigprocmask(SIG_BLOCK, &sigset, NULL)) {
        fprintf(stderr, "Error calling sigprocmask: %s (%d)n", strerror(errno), errno);
        return 0;
    }
    for(;;) {
        sleep(2);
        puts("blah...");
    }
}
Empfehlenswerte Lektüre:

Code: Select all

man signal
man sigaction

alexander newald
Posts: 1117
Joined: 2002-09-27 00:54
Location: Hannover

Re: Perl STRG+Z abfangen?

Post by alexander newald » 2005-11-05 14:48

Thanks