On Fri, 19 Feb 1999, Rahul Dhesi wrote:

> Many years ago I posted a shell script to Usenet in which I prepended a
> line with 'exec', in an attempt to avoid having a shell process hanging
> around doing a wait().  David Korn himself (of Korn shell fame)
> responded saying this was not necessary, as the shell would do exec()
> anyway.
> 
> I check with trace() on a Sun and he seemed to be right.  This was for
> the classic Bourne shell many years ago.
> 
> But I just checked /bin/sh on 3.1-RELEASE with ktrace and the above does
> not seem to be true.  I get drastically different traces for
> 
>    #! /bin/sh
>    exec /bin/pwd
> 
> and
> 
>    #! /bin/sh
>    /bin/pwd
> 
> Rahul

I know that the FreeBSD Bourne shell doesn't do this, nor does the PDKSH.
I checked and the copy of the AT&T Korn shell I have (for BSDi) does do what
David Korn says.

> 
> > Date:  Fri, 19 Feb 99 11:43:59 EST
> > From:  Mikhail Teterin <m...@misha.cisco.com>
> > To:    curr...@freebsd.org
> > Message-Id: <199902191644.laa08...@misha.cisco.com>
> > Subject: sh(1) -- exec vs. fork
> > Reply-To: m...@aldan.algebra.com
> 
> > I just finished going through a couple of crontabs prepending the
> > command-lines with ``exec'', when it hit me.
> > 
> > Can shell itself recognize, there will be no more commands and just
> > proceed to exec without forking? What would this break?
> ...
> 
> 
> To Unsubscribe: send mail to majord...@freebsd.org
> with "unsubscribe freebsd-current" in the body of the message
> 

 Brian Feldman                                    _ __  ___ ___ ___  
 gr...@unixhelp.org                           _ __ ___ | _ ) __|   \ 
             http://www.freebsd.org/     _ __ ___ ____ | _ \__ \ |) |
 FreeBSD: The Power to Serve!      _ __ ___ ____ _____ |___/___/___/ 



To Unsubscribe: send mail to majord...@freebsd.org
with "unsubscribe freebsd-current" in the body of the message

Reply via email to