command line arg expansion
Larry Hall (Cygwin)
reply-to-list-only-lh@cygwin.com
Fri Jan 12 15:35:00 GMT 2007
<http://cygwin.com/acronyms/#TOFU>. Reformatted.
jim wrote:
>> -----Original Message-----
>> From: Larry Hall (Cygwin) [mailto:reply-to-list-only-lh <AT> cygwin <DOT> com]
>> Sent: Thursday, January 11, 2007 12:37 PM
>> To: cygwin <AT> cygwin <DOT> com
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
<http://cygwin.com/acronyms/#PCYMTNQREAIYR>. No one wants the spam. Thanks.
>> Subject: Re: command line arg expansion
>>
>> jim wrote:
>>> I have recently upgraded from 1.5.12 to 1.5.23 and noticed
>> something that
>>> has me wondering. I compiled this on 1.5.23 and have run
>> it under cmd.exe
>>> on on 1.5.12 and 1.5.23:
>>>
>>> #include <stdio.h>
>>>
>>> int main(int argc, char *argv[])
>>> {
>>> int i, c;
>>>
>>> for (i = 0; i < argc; i++)
>>> printf("arg[%d]: '%s'\n", i, argv[i]); }
>>>
>>> On 1.5.12:
>>> C:\>e '/.*/'
>>> arg[0]: 'e'
>>> arg[1]: '/.*/'
>>>
>>> On 1.5.23:
>>> C:\>e '/.*/'
>>> arg[0]: 'e'
>>> arg[1]: '/../'
>>> arg[2]: '/./'
>>> arg[3]: '/.other/'
>>>
>>> It appears that the runtime initialization on 1.5.23 is
>> doing command line
>>> expansion - is this correct? If so, is this change
>> documented somewhere so
>>> I get the full explanation?
>> See <http://cygwin.com/cygwin-ug-net/using-cygwinenv.html>.
>> Look for the "(no)glob" explanation.
> Thanks Larry. I had seen that option, but nothing to indicate that it had
> changed between 1.5.12 and 1.5.23. Can anyone account for the difference
> between these two versions? What I'm actually seeing is a behavior change
> in a perl script that does something like:
>
> open(LS, "ls -dF1 /c* | grep '/.*/' |");
>
> One way to fix this is wrap it with bash, but I'd like to understand exactly
> what changed. Replacing grep with the program below showed me a
> difference in the wild card expansion and that lead to the assumption that
> wild cards are expanded differently - maybe it's something else?
You may want to look at Perl too. Obviously, there's a difference between
the command line and the operations in Perl but you may not be chasing the
same problem by looking at the command line issue.
Off-hand, I don't recall a conscious change here. The glob option has been
there "forever" so if you see a difference in 1.5.12 vs now, I'd say it's
fair to assume that the 1.5.12 behavior indicates a bug that has since been
fixed.
--
Larry Hall http://www.rfk.com
RFK Partners, Inc. (508) 893-9779 - RFK Office
216 Dalton Rd. (508) 893-9889 - FAX
Holliston, MA 01746
_____________________________________________________________________
A: Yes.
> Q: Are you sure?
>> A: Because it reverses the logical flow of conversation.
>>> Q: Why is top posting annoying in email?
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
More information about the Cygwin
mailing list