bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bash cannot kill itself?


From: Chris F.A. Johnson
Subject: Re: Bash cannot kill itself?
Date: Wed, 30 Jun 2010 00:38:53 -0400 (EDT)
User-agent: Alpine 2.00 (LMD 1167 2008-08-23)

On Wed, 30 Jun 2010, Clark J. Wang wrote:

> I have a bash script like this:
> 
> #!/bin/bash
> 
> trap 'echo killed by SIGALRM; exit 1' ALRM
> 
> function wait_kill()
> {
>     sleep 5
>     kill -ALRM $$
> }
> 
> wait_kill &
> 
> sleep 3600
> 
> ### END OF THE SCRIPT ###
> 
> It does not work as I expected. The running script was not terminated after
> 5 seconds. So what's wrong here?

  $$ refers to the subshell. Try:

trap 'echo killed by SIGALRM; exit 1' ALRM

function wait_kill()
{
    sleep 5
    kill -ALRM $pid
}

pid=$$
wait_kill &

sleep 3600

-- 
   Chris F.A. Johnson, <http://cfajohnson.com>
   Author:
   Pro Bash Programming: Scripting the GNU/Linux Shell (2009, Apress)
   Shell Scripting Recipes: A Problem-Solution Approach (2005, Apress)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]