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


Groups > gnu.bash.bug > #14155

Re: extglob patterns not expanded in -c command-strings

Path csiph.com!goblin1!goblin.stu.neva.ru!usenet.stanford.edu!not-for-mail
From Chet Ramey <chet.ramey@case.edu>
Newsgroups gnu.bash.bug
Subject Re: extglob patterns not expanded in -c command-strings
Date Sun, 27 May 2018 21:36:14 -0400
Organization ITS, Case Western Reserve University
Lines 32
Approved bug-bash@gnu.org
Message-ID <mailman.603.1527471385.1292.bug-bash@gnu.org> (permalink)
References <5b0b4173.1c69fb81.6c66f.f11f@mx.google.com>
Reply-To chet.ramey@case.edu
NNTP-Posting-Host lists.gnu.org
Mime-Version 1.0
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding 7bit
X-Trace usenet.stanford.edu 1527471385 17446 208.118.235.17 (28 May 2018 01:36:25 GMT)
X-Complaints-To action@cs.stanford.edu
Cc chet.ramey@case.edu
To marcelpaulo@gmail.com, bug-bash@gnu.org, bash@packages.debian.org
Envelope-to bug-bash@gnu.org
User-Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.8.0
In-Reply-To <5b0b4173.1c69fb81.6c66f.f11f@mx.google.com>
Content-Language en-US
X-Junkmail-Status score=7/90, host=mpv3-2015.case.edu
X-Junkmail-PrAS-Raw score=7/90, refid=2.7.2:2018.5.28.5416:17:7.944, ip=, rules=__HAS_REPLYTO, __HAS_CC_HDR, __SUBJ_REPLY, __BOUNCE_CHALLENGE_SUBJ, __BOUNCE_NDR_SUBJ_EXEMPT, __SUBJ_ALPHA_END, __TO_MALFORMED_2, __TO_NO_NAME, __REFERENCES, __HAS_FROM, FROM_EDU_TLD, __HAS_MSGID, __SANE_MSGID, DATE_TZ_NA, __USER_AGENT, __MOZILLA_USER_AGENT, __MIME_VERSION, __IN_REP_TO, __CT, __CT_TEXT_PLAIN, __CTE, __REPLYTO_SAMEAS_FROM_ADDY, __REPLYTO_SAMEAS_FROM_ACC, __FROM_DOMAIN_IN_ANY_CC1, __FROM_DOMAIN_IN_ANY_CC2, __REPLYTO_SAMEAS_FROM_DOMAIN, __ANY_URI, __URI_WITH_PATH, __FRAUD_BODY_WEBMAIL, __URI_NO_WWW, __CP_URI_IN_BODY, __SUBJ_ALPHA_NEGATE, __URI_IN_BODY, __URI_NOT_IMG, __FORWARDED_MSG, __NO_HTML_TAG_RAW, BODYTEXTP_SIZE_3000_LESS, BODY_SIZE_1200_1299, __MIME_TEXT_P1, __MIME_TEXT_ONLY, __URI_NS, HTML_00_01, HTML_00_10, BODY_SIZE_5000_LESS, __FRAUD_WEBMAIL, IN_REP_TO, MSG_THREAD, __FROM_DOMAIN_IN_RCPT, MULTIPLE_REAL_RCPTS, LEGITIMATE_SIGNS, [TRUNCATED], so=2010-03-03 19:42:08, dmn=2016-08-03-0138
X-detected-operating-system by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] [fuzzy]
X-Received-From 129.22.103.194
X-BeenThere bug-bash@gnu.org
X-Mailman-Version 2.1.21
Precedence list
List-Id Bug reports for the GNU Bourne Again SHell <bug-bash.gnu.org>
List-Unsubscribe <https://lists.gnu.org/mailman/options/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=unsubscribe>
List-Archive <http://lists.gnu.org/archive/html/bug-bash/>
List-Post <mailto:bug-bash@gnu.org>
List-Help <mailto:bug-bash-request@gnu.org?subject=help>
List-Subscribe <https://lists.gnu.org/mailman/listinfo/bug-bash>, <mailto:bug-bash-request@gnu.org?subject=subscribe>
Xref csiph.com gnu.bash.bug:14155

Show key headers only | View raw


On 5/27/18 7:38 PM, marcelpaulo@gmail.com wrote:

> Bash Version: 4.4
> Patch Level: 19
> Release Status: release
> 
> Description:
> extglob patterns are not expanded in -c command-strings, even if extglob is set within the command-string. For instance, running:
> 
> bash -c 'shopt -s extglob; echo @(foo*|bar*)'
> 
> generates this error:
> 
> bash: -c: line 0: syntax error near unexpected token `('
> bash: -c: line 0: `shopt -s extglob; echo @(foo*|bar*)'

Of course. This is how the shell should behave. Bash always reads at least
one complete line of input before parsing and executing any of the commands
on that line.

If you apply that rule, you can figure out the answer: extglob changes the
behavior of the parser, so it must be enabled before a command is parsed.
The complete line of input is read before any of it is parsed, and the
complete line is parsed before any of it is executed. As a consequence, the
extglob option must be enabled for the ( to be recognized as an extended
globbing pattern instead of an operator.

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

Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread


Thread

Re: extglob patterns not expanded in -c command-strings Chet Ramey <chet.ramey@case.edu> - 2018-05-27 21:36 -0400

csiph-web