Hey! it works!
The third option you suggested does the job, using as well sh or bash as xterm or gnome-terminal. I include the code:
...
$tks->signal_connect( 'clicked' => sub {
my $command = "tw pro:$currproj";
my $ret = fork();
if($ret == 0) {
# this is the fork: become $command and go away.
exec("gnome-terminal", "-e", "bash -c '$command; bash'");
}
else { # this is the parent: do nothing and go ahead. }
return FALSE;
} );
I detect zombie processes remaining in my ps -e:
2504 ? 00:00:01 perl
2509 ? 00:00:01 gnome-terminal <defunct>
2573 ? 00:00:01 gnome-terminal <defunct>
2638 ? 00:00:01 gnome-terminal <defunct>
2702 ? 00:00:01 gnome-terminal <defunct>
2767 ? 00:00:00 gnome-terminal
2773 ? 00:00:00 gnome-pty-helpe
that dissapear when the perl script comes to en end.
Thank you very much, Anonymous Wisdom.
|