Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
double quoted expansion question
- X-seq: zsh-users 17225
- From: Sebastian Stark <seb-zsh@xxxxxxxxxxx>
- To: zsh-users@xxxxxxx
- Subject: double quoted expansion question
- Date: Fri, 7 Sep 2012 14:31:38 +0200
- List-help: <mailto:zsh-users-help@zsh.org>
- List-id: Zsh Users List <zsh-users.zsh.org>
- List-post: <mailto:zsh-users@zsh.org>
- Mailing-list: contact zsh-users-help@xxxxxxx; run by ezmlm
Dear zsh users,
I am trying to make a unique list of tags that is given in a string with a certain format, e. g.:
servers="
madeira linux,gpu,users
madeira2 linux,gpu,users
smtp linux,mail,smtp
isar linux,users
easygwa linux,web,external
"
The format is: server name, space, tag, comma, tag, comma, tag ...
What I want from the above list is this:
external gpu linux mail smtp users web
and I get it with:
print ${(s:,:uo)${(j:,:)${${(f)servers}//* /}}}
However, if I do this:
print "${(s:,:uo)${(j:,:)${${(f)servers}//* /}}}"
I get:
external linux web
This also happens when I use the variable expansion expression in a here document, which, I suppose, is undergoing the same treatment as double quoted strings.
What I would like to understand here is why the output changes the way it does when I add double quotes around my expression. I would expect the same output as without. If anybody could shed some light please, I guess it's just something obvious I cannot see.
Sebastian
Messages sorted by:
Reverse Date,
Date,
Thread,
Author