On 02/28/2012 07:00 PM, Dan Douglas wrote: > On Tuesday, February 28, 2012 06:52:13 PM John Kearney wrote: >> On 02/28/2012 06:43 PM, Dan Douglas wrote: >>> On Tuesday, February 28, 2012 06:38:22 PM John Kearney wrote: >>>> On 02/28/2012 06:31 PM, Dan Douglas wrote: >>>>> On Tuesday, February 28, 2012 05:53:32 PM Roman Rakus >>>>> wrote: >>>>>> On 02/28/2012 05:49 PM, Greg Wooledge wrote: >>>>>>> On Tue, Feb 28, 2012 at 05:36:47PM +0100, Roman Rakus >>>>>>> >>>>>>> wrote: >>>>>>>> And that means, there isn't way to substitute >>>>>>>> "something" to ' (single quote) when you want to not >>>>>>>> perform word splitting. I would consider it as a >>>>>>>> bug. >>>>>>> >>>>>>> imadev:~$ q=\' imadev:~$ input="foosomethingbar" >>>>>>> imadev:~$ echo "${input//something/$q}" foo'bar >>>>>> >>>>>> I meant without temporary variable. >>>>>> >>>>>> RR >>>>> >>>>> ormaaj@ormaajbox ~ $ ( x=abc; echo ${x/b/$'\''} ) a'c >>>> >>>> ( x=abc; echo "${x/b/$'\''}" ) -bash: bad substitution: no >>>> closing `}' in "${x/b/'}" >>>> >>>> >>>> you forgot the double quotes ;) >>>> >>>> >>>> I really did spend like an hour or 2 one day trying to figure >>>> it out and gave up. >>> >>> Hm good catch. Thought there might be a new quoting context >>> over there. >> >> I think we can all agree its inconsistent, just not so sure we >> care?????? i.e. we know workarounds that aren't so bad variables >> etc. > > Eh, it's sort of consistent. e.g. this doesn't work either: > > unset x; echo "${x:-$'\''}" > > and likewise a backslash escape alone won't do the trick. I'd > assume this applies to just about every expansion. > > I didn't think too hard before posting that. :)
My favorite type of bug one thats consistently inconsistent :) now that I have a beter idea of what weird I'll take a look later after the gym.