Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > gnu.bash.bug > #14813

Re: built-in '[' and '/usr/bin/[' yield different results

From Greg Wooledge <wooledg@eeg.ccf.org>
Newsgroups gnu.bash.bug
Subject Re: built-in '[' and '/usr/bin/[' yield different results
Date 2018-11-13 12:54 -0500
Message-ID <mailman.3985.1542131699.1284.bug-bash@gnu.org> (permalink)
References <5b86cf1c-d39a-befc-9734-5be8abd5cddd@heinzerling.com>

Show all headers | View raw


On Tue, Nov 13, 2018 at 05:29:42PM +0100, Service wrote:
> Repeat-By:
>     Under Windows 10, WSL.

Then why did you send this to a debian.org address?

>     Start "bash", terminal with shell pops up.

>     2. This does not work:
> 
>     # Put the above commands into a script, say check.sh
>     # Run with: /bin/sh < check.sh
>     # Or      : /bin/sh ./check.sh

In both of these cases, you're explicitly calling /bin/sh rather than
bash.  So you are not using bash's builtin [.  You are using WSL's sh's
builtin [ command.  You might start by identifying which shell WSL uses
as its sh.

>     # Or      : /usr/bin/env ./check.sh

In this case, it would use the shebang line of check.sh to decide which
shell to run.  However, I suspect you did not include a shebang line at
all.  In that case, /usr/bin/env will decide how to handle the exec
format error.  It might decide to spawn sh for you, in which case this
would explain why the result matches the first two results.

Back to gnu.bash.bug | Previous | Next | Find similar | Unroll thread


Thread

Re: built-in '[' and '/usr/bin/[' yield different results Greg Wooledge <wooledg@eeg.ccf.org> - 2018-11-13 12:54 -0500

csiph-web