Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14375 > unrolled thread

Re: Empty ""s in ARG in ${x:+ARG} expand to no words instead of the empty word if prepended/appended with space

Started byBob Proulx <bob@proulx.com>
First post2018-07-20 22:44 -0600
Last post2018-07-20 22:44 -0600
Articles 1 — 1 participant

Back to article view | Back to gnu.bash.bug

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: Empty ""s in ARG in ${x:+ARG} expand to no words instead of the empty word if prepended/appended with space Bob Proulx <bob@proulx.com> - 2018-07-20 22:44 -0600

#14375 — Re: Empty ""s in ARG in ${x:+ARG} expand to no words instead of the empty word if prepended/appended with space

FromBob Proulx <bob@proulx.com>
Date2018-07-20 22:44 -0600
SubjectRe: Empty ""s in ARG in ${x:+ARG} expand to no words instead of the empty word if prepended/appended with space
Message-ID<mailman.3946.1532148258.1292.bug-bash@gnu.org>
Denys Vlasenko wrote:
> $ f() { for i; do echo "|$i|"; done; }
> $ x=x
> $ e=
> $ f ${x:+ ""}
> ^^^^^^^^^^^ prints nothing, bug?
> 
> $  ${x:+"" }
> ^^^^^^^^^^^ prints nothing, bug?

Insufficient quoting.  That argument should be quoted to avoid the
whitespace getting stripped.  (Is that during word splitting phase
using the IFS?  I think so.)

Try this:

  f "${x:+ ""}"
  f "${x:+"" }"

Also in the future please say what version of bash you are using.
There have been a lot of bugs fixed in various versions.

Bob

[toc] | [standalone]


Back to top | Article view | gnu.bash.bug


csiph-web