|
From: | Marc Aurèle La France |
Subject: | Re: Bash 5.1: Make shell_script_filename available to startup files |
Date: | Sat, 17 Feb 2024 16:17:02 -0700 (Mountain Standard Time) |
User-agent: | Alpine 2.20 (WNT 67 2015-01-07) |
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.
[Prev in Thread] | Current Thread | [Next in Thread] |