This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: cygwin-bash compat/regression bug... startup line prob

Eric Blake wrote:
On 04/30/2014 11:57 PM, Linda Walsh wrote:
Eric Blake wrote:
On 04/28/2014 02:43 PM, Linda Walsh wrote:

cat bin/
#!/bin/bash -u
Um... it doesn't work with 1 argument either.

Your context quoting is hard to follow. Here, you are complaining about
a she-bang with only one argument,...
I think we are on two different pages.

While I had the example with -u + -x, later on in the same note,

It has something to do with the "-u" switch -- the "-x" was
added to try to figure out why a script that had just
#!/bin/bash -u
died w/o executing a single line.

| > cat bin/
| #!/bin/bash -u -x

which is indeed invalid usage].
Not on linux, which you say cygwin follows. *YOU* quoted it

 On Linux, the entire string following the
       interpreter name is passed as a single argument to the
interpreter, and this string can include white space.
       A maximum line length of 127 characters is allowed for the  first
 line  in a #! executable shell script.

On linux, (and, thus on cygwin?), "#!/bin/bash -u -x -a -b -c"
is passed as 1 argument to bash.  I.e. the spaces don't break things
into separate arguments on linux.  So any line up to 127 characters
is allowed and anything after the executable name is a single argument
to the end of the line (or 127 chars total).

I.e. the above is valid as well -- but it was the single "-u" switch
that doesn't work.

Also weird -- the interp line says "/bin/bash" not "/usr/bin/bash"
as the shell, so why does the error come from /usr/bin/bash?
the answer to this question.
This isn't clear to me.  If I am running /bin/bash, why did the error
say /usr/bin/bash?

Because you weren't running /bin/bash at that point in time, but
/usr/bin/bash.  Again, you snipped the relevant portion of your original
No...I was... the output at the top was from "", which had

But the error message says /usr/bin/bash.


| > bash

but that says to run '' using the 'bash' interpreter found first in
your PATH
But that is not the first example in the email nor the one that gave
the /usr/bin/bash as the error message source.

I said later, that "bash" worked.. (as well as /bin/bash
it's only when invoked w/o specifying the interpreter on the command
line.  (i.e. going from the shebang line which says /bin/bash)

So why doesn't a single argument work (-u?)

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]