Mail Archives: cygwin/2004/09/03/11:49:14
Igor Pechtchanski wrote:
> On Fri, 3 Sep 2004, Mark Bohlman wrote:
>
>
>>Igor Pechtchanski wrote:
>>
>>>On Fri, 3 Sep 2004, Christopher Cobb wrote:
>>>
>>>
>>>>I get different results than you do. It seems to work as expected:
>>>>
>>>>chcobb AT CHCOBB-054009 /c/Documents and Settings 09:45:46
>>>>511$ cat test.bat
>>>>echo %1
>>>>
>>>>chcobb AT CHCOBB-054009 /c/Documents and Settings 09:45:48
>>>>511$ ./test.bat
>>>>
>>>>C:\Documents and Settings>echo
>>>>ECHO is on.
>>>
>>>I believe you're missing the point. Try
>>>
>>>../test.bat "hello world"
>>>
>>>and you'll get the error.
>>>
>>>I've come across this when writing a pure Windows loader for another
>>>program. The above is actually an idiosyncrasy of the way spawn() works
>>>in Cygwin (and, incidentally, in Windows' own MSVCRT) -- it calls
>>>CreateProcess, which expects all arguments combined into one command
>>>string (which, in turn, is later parsed for separate arguments - yes,
>>>retarded, I know). The fact is that, if any argument contains spaces, it
>>>has to be quoted before CreateProcess() is invoked. Cygwin apparently
>>>doesn't do this properly to the first argument, so the above breaks. See
>>>spawn_guts() in winsup/cygwin/spawn.cc (warning: a 590!-line function).
>>><http://cygwin.com/acronyms/#PTC>.
>>> Igor
>>
>>You get the same "odd evaluation behavior" when doing
>>echo "Hello World" | ./test.bat
>>(in any directory).
>>-- Mark
>
>
> Actually, I don't. Did you, by chance, mean "echo ...|xargs ./test.bat"?
> Even so, you should probably be a bit more specific about the "odd
> evaluation behavior" that you're observing.
> Igor
Hmmm. I'm seeing the same results as you show above with a quoted
"Hello World" parameter to the ./test.bat.
Then in doing the echo, without the xargs, results in the same
"non-evaluation" (what i consider to be 'odd') for parameter %1 within
the test.bat file.
-- Mark
--
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/
- Raw text -