Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Z-Shell Frequently-Asked Questions (monthly posting)



hzoli@xxxxxxxxxx wrote:
> > B1) Differences from sh and ksh
> > ...
> >   Command line substitutions, globbing etc.:
> 
> Just one addition here: foo=* assignment assigns the list of files in the
> current directory as an array to foo if there are at least two matches, or if
> there is a single file in the directory, foo becames a scalar whose value is
> the name of that file. Other Bourne shells does not glob the right hand side
> of assignments. In my releases the default behaviour is to not glob here, but
> this can be changed by setting the GLOB_ASSIGN option.

I agree this is a little inconsistent.  What about `foo=(*)', though?
I use that kind of thing a lot, and it seems obvious to me that it
should always do globbing --- at least, I tend to think of arguments
of an array assignment behaving like command line arguments as far as
word splitting is concerned.  Perhaps it's not obvious to others.  (I
can do `set -A' but I like assignments to look like assignments.)

> >     Treatment of backslashes within backquotes is subtly different.
> 
> I still do not know about such differences.

I think they've now disappeared, though I don't know when that
happened:  certainly some pretty grotesque constructions now do the
same in zsh as the other shells.  I meant to delete this line.

-- 
Peter Stephenson <P.Stephenson@xxxxxxxxxxxxx>  Tel: +44 1792 205678 extn. 4461
WWW:  http://python.swan.ac.uk/~pypeters/      Fax: +44 1792 295324
Department of Physics, University of Wales, Swansea,
Singleton Park, Swansea, SA2 8PP, U.K.



Messages sorted by: Reverse Date, Date, Thread, Author