On Fri, 2024-Feb-16, Grisha Levit wrote:
On Fri, Feb 16, 2024, Marc Aurèle La France wrote:
On Mon, 2021-Feb-01, Marc Aurèle La France wrote:
Currently, only the script's arguments are passed as positional
parameters. For compatibility reasons, $0 cannot be used to also pass the
script's filename, so I'm creating a new BASH_SCRIPT variable instead.
--- bash-5.1/doc/bash.1
+++ devel-5.1/doc/bash.1
Yes, it's been three years, but...
Withdrawn. I can accomplish the same thing by capturing $_ early on,
before it gets clobbered by whatever.
I believe bash-5.2 and up do behave the way you want w.r.t. the value
of $0 when running the BASH_ENV script.
See https://git.savannah.gnu.org/cgit/bash.git/tree/NEWS-5.2?h=devel#n58 :
p. The `$0' special parameter is now set to the name of the script when running
any (non-interactive) startup files such as $BASH_ENV.
Yes, that works as well and is probably less fragile given how often $_ is
set.
Thanks.
Marc.