[Rio-pm] [HELP] Controlando comandos do sistema

Giuliani Sanches giulianisanches em gmail.com
Segunda Novembro 25 11:17:35 PST 2013


Quanto a linha

$SIG{qw (INT TERM HUP)} = sub { ... }

O que ele fez foi atribuir a função anonima para tres "signals" diferentes,
seria o mesmo que:

$SIG{INT} = sub { ... }
$SIG{TERM} = sub { ... }
$SIG{HUP} = sub { ... }

O que cada um destes "singnals" fazem ou significam podem ser vistos aqui:

https://www.gnu.org/software/bash/manual/html_node/Signals.html

Abraço.


Giuliani D. Sanches
about.me/giulianisanches


2013/11/25 Aureliano Guedes <guedes_1000 em hotmail.com>

> André Luiz, vou fazer da sua forma, obrigado.
> Agora fiquei sem entender porque $SIG{qw (INT TERM HUP)}...
>
> Renato, tentei fazer assim:
> my $c = 0;
> $SIG{INT} = sub { $c <= 2 ? $c++ : die };
>
> while (1) {
>     print "TESTE\n";
>     sleep 1;
> }
>
> Deu certo, mas deu errado, por algum motivo tenho que apertar ctrl + c
> umas 4 vezes ou mais para dar certo
>
>
> ------------------------------
> From: renato.cron em gmail.com
> Date: Mon, 25 Nov 2013 16:22:07 -0200
> To: rio-pm em pm.org
> Subject: Re: [Rio-pm] [HELP] Controlando comandos do sistema
>
>  SIGINT        2       Term    Interrupt from keyboard
>
>
> Esse é o CTRL+C,
>
> $SIG{INT} = 'IGNORE';
>
> não consegui fazer assim:
>
> my $c = 0; $SIG{INT} = sub { return 'IGNORE' if $c++ < 3 };
>
> não sei porque, alguem sabe?
>
>
> 2013/11/25 Andre Luis <alpbs2003 em gmail.com>
>
> nesse caso só iria ignorar ele nao irira tratar ... pelo que eu entendi
> ele quer tratar
>
>
>
> $SIG{KILL} = sub {  do_something() };
>
>
>
>
> Em 25 de novembro de 2013 16:06, Renato Santos <renato.cron em gmail.com>escreveu:
>
> você tem que ignorar o sinal de KILL do sistema.
>
>
> para saber mais sobre os sinais, http://perldoc.perl.org/perlipc.html
>
> algo para ignorar pra sempre,
>
> $SIG{KILL} = 'IGNORE';
>
>
>
> 2013/11/25 Aureliano Guedes <guedes_1000 em hotmail.com>
>
> Boa tarde,
> Monges.
>
> Gostaria de saber se existe a possibilidade de eu controlar comandos do
> sistema?
>
> Bom, quando estamos executando algum script, se eu quiser encerra-lo a
> qualquer momento basta que eu tecle Ctrl + C.
> Mas e se eu quisesse, especificamente em um script, determinar que seu
> encerramento fosse após apertar 3 vezes consecutivas Ctrl + C, ou então ao
> apertar Ctrl + shift + C, ou sei lá, qualquer outro comando que eu queira,
> como deveria fazer?
>
> Desde já grato.
>
> Att,
> Aureliano Guedes
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
>
>
>
> --
> Saravá,
> Renato CRON
> http://www.renatocron.com/blog/
> @renato_cron <http://twitter.com/#%21/renato_cron>
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
>
>
>
> --
> "technology does not drive change - it enables change"
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
>
>
>
> --
> Saravá,
> Renato CRON
> http://www.renatocron.com/blog/
> @renato_cron <http://twitter.com/#%21/renato_cron>
>
> _______________________________________________ Rio-pm mailing list
> Rio-pm em pm.org http://mail.pm.org/mailman/listinfo/rio-pm
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20131125/4b020403/attachment.html>


Mais detalhes sobre a lista de discussão Rio-pm