On 09/11/2017 04:27 PM, Nikolay Melekhin wrote: > > I'd expect that Cygwin must remove CRLF symbols from backtick results,
You expected wrong - by default Cygwin does the same as Linux, which does NOT remove CR from command substitution (only LF). > but remove only LF symbol. It gets different results on Windows and > Linux. Result on Windows has additional CR symbol and for example > string comparision, which is working in Linux, fails in Windows. It is NOT a bug in Cygwin, but in your failure to sanitize your input. You'd get the same behavior on Linux if you pass in CR bytes. That said, > > Is any kind of an option/setting which removes such CRs or it is a bug > in Cygwin? Read the release announcements: Cygwin bash DOES have an 'igncr' shell option (set -o igncr) that does exactly what you are asking for - it makes bash ignore CR characters in command substitutions and other places: https://cygwin.com/ml/cygwin-announce/2017-01/msg00047.html The option is not on by default, but exists because it is a common desire when you can't be bothered to otherwise sanitize CR out of your input stream. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature