Re: Quotes around command-line argument that has unicode characters are not removed
- Date: Fri, 23 Mar 2018 08:39:21 +0100
- From: Thomas Wolff <towo@xxxxxxxx>
- Subject: Re: Quotes around command-line argument that has unicode characters are not removed
Am 22.03.2018 um 12:24 schrieb Andrey Repin:
cmd.exe applies some inconsistent "smart" (in an MS sense...) magic
quoting; it adds additional quotes if the parameter contains non-ASCII
when I put quotes around file that has
non-ASCII symbols, these quotes are passed to argv of the process literally,
otherwise they are removed. I would expect that there is a consistency.
Parameter unquoting done by the shell.
CMD does that differently from POSIX shells.
I have written a small C program that displays arguments, and run it three times:
You can also test this with cygwin /bin/echo:
This is also the reason why 'chere' fails on non-ASCII directories.
Due to the weird cmd.exe behaviour, you cannot. However, cygwin could
apply a workaround by magic unquoting.
As one can see, the last run fails. I am a bit puzzled: how can I pass the name
of the file with space and Unicode symbols? I need to do it in uniform way, as I
am calling a Cygwin program from native Windows program, as in .
Any feedback is appreciated.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple