On 4/2/23 1:28 PM, Robert Elz wrote:
     Date:        Sun, 2 Apr 2023 17:48:24 +0200
     From:        Martin Schulte <g...@schrader-schulte.de>
     Message-ID:  <20230402174824.01db4d51fd4f0061fdba7...@schrader-schulte.de>
   | in the following lines I consider dash's behaviour as correct
   | an bash's as wrong:

All other shells (even ksh93) not just dash.

I suspect the issue is that the string after %% is not regarded as
quoted, even when the expansion is
As POSIX specifies:

"Enclosing the full parameter expansion string in double-quotes shall not
cause the following four varieties of pattern characters to be quoted,
whereas quoting characters within the braces shall have this effect."

   | $ bash        -c 'option2="test{<().["; echo "${option2%%[<().[]*}"'

bash is parsing the <() as a process substitution, producing nothing.
Yes. No command, no child process, no pipe, no pathname.

--
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    c...@case.edu    http://tiswww.cwru.edu/~chet/


Reply via email to