Web lists-archives.com

Re: Setting a bash variable from backtick operator fails




On 27/02/2018 15:47, Andrey Repin wrote:
Greetings, Numien!

While working on diagnosing an issue with autotools, I found Cygwin's
bash seems to not be able to set a variable from backtick substitution,
at least on my system (Cygwin x86_64, updated today, on Win10)


On a Linux system it works as expected:

$ test=`echo "x86_64-pc-cygwin" | sed 's/-[^-]*$//'`; echo $test

x86_64-pc


On a Cygwin system it doesn't:

$ test=`echo "x86_64-pc-cygwin" | sed 's/-[^-]*$//'`; echo $test

(no output)

I'm unable to reproduce it here.

it works also for me

This also happens in scripts (where I originally encountered the
problem), not just on the command line.

Directly outputting it (echo `echo "x86_64-pc-cygwin" | sed
's/-[^-]*$//'`) works fine, it seems to be specifically related to
setting a variable.

Any suggestions?

Any BLODA?


likely. Someone just had similar problem with sed invocation

https://stackoverflow.com/questions/48927435/cygwin-command-substitution-not-working


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple