Re: [PATCH] shell portability: Use sed instead of non-portable variable expansion
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 5, 2011, 07:45 UTC
- Message-ID
- <7v39gbxwi6.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <4E647BD5.8060609@viscovery.net>
Johannes Sixt <j.sixt@viscovery.net> writes:
Show 5 quoted lines
> Actually, it's the opposite: Within double-quotes, a backslash is only > removed when the next character has a special meaning (essentially $, `, > ", \), otherwise, it remains and loses its quoting ability. This means, > that the backslash would remain as a literal character in our patterns on > the right of % or #, and they would not work anymore as intended.
That's strange...
I thought that VAR=<any string without $IFS character in it> would behave identically to VAR="<the same string as above>". You seem to be saying that they should act differently.
>> If that is the case, either the above or my [?] would work it around, I >> would think. > > [?] instead of \? is certainly also worth a try.
I obviously agree. Besides, [?] would sidestep the tricky backslash vs double quote issue entirely, so it would be a more robust solution to leave it around than "sometimes you need to avoid double-quote and some other times you would need double-quote" for other people to mimic writing tests later.