Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Sep 2001 01:10:22 -0500
From:      Matt Finlay <matt@ipperformance.com>
To:        Mario Sergio Fujikawa Ferreira <lioux@uol.com.br>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: bug in shell `` expansion code?
Message-ID:  <3BAC2B4E.47E32A07@ipperformance.com>
References:  <20010922011302.A44620@exxodus.fedaykin.here>

next in thread | previous in thread | raw e-mail | index | archive | help


Mario Sergio Fujikawa Ferreira wrote:

> Hi,
>
>         While working on a make .mk code, I and Chris Wasser (TDF
> on IRC) came across an interesting behavior:
>
> sh -c 'TDF="echo a && echo b";for i in `${TDF}`; do echo "i:$i"; done'
>

i do not believe this is a bug... it is the way the bash shell executes
commands.  this is what is happening:
first TDF gets set to "echo a && echo b",
when you get to the for statement... `${TDF}` causes "echo a && echo
b"(TDF) to be executed.
however instead of executing the way you are intending it actually
executes echo "a && echo b"... this value get stored
back into TDF.  so that is why you are getting the output
i:a
i:&&
i:echo
i:b


>
> This should return:
>
> i:a
> i:b
>
> instead, it returns:
>
> i:a
> i:&&
> i:echo
> i:b
>
>         If this is not a bug, how do we get it working?
>
>         Regards,
>
> --
> Mario S F Ferreira - UnB - Brazil - "I guess this is a signature."
> lioux at ( freebsd dot org | linf dot unb dot br )
> flames to beloved devnull@someotherworldbeloworabove.org
> feature, n: a documented bug | bug, n: an undocumented feature
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3BAC2B4E.47E32A07>