Curious bash evaluation

Rodolfo Alcazar Portillo nospaze at gmail.com
Mon Dec 27 17:30:24 UTC 2010


On Mon, 2010-12-27 at 10:46 -0600, inode0 wrote:
> On Mon, Dec 27, 2010 at 10:05 AM, Rodolfo Alcazar Portillo
> <nospaze at gmail.com> wrote:
> > Hello. See this:
> >
> > # A="echo 'hi'"
> >
> > # echo $($A)
> > 'hi'
> 
> That seems rather convoluted. Are you sure you don't just want to
> "eval $A" anyway?

Very sure. Not "bash", nor "eval". Just simple command substitution.
Another reason: it's shorter. Another reason: It must be understood, not
just avoided in a micro$oft software fashion.

> I realize your example may be a simple abstraction of something more complex.

Of course. I'm building a short script from some string. The rest is
boring.

Another failing example:
> cat script 
echo "hello"

> $(<script)
"hello"

The $(<file) form is documented in the manual:
http://www.faqs.org/docs/bashman/bashref_30.html

Thanks!
-- 
----------------------------------------------
Rodolfo Alcazar Portillo - nospaze at gmail.com
otbits.blogspot.com / counter.li.org: #367962
----------------------------------------------
Q. What's the difference between Batman and Bill Gates?
A. When Batman fought the Penguin, he won.




More information about the users mailing list