On 10/8/20 3:00 AM, Patrick O'Callaghan wrote:
On Thu, 2020-10-08 at 08:14 +1100, Cameron Simpson wrote:
> On 07Oct2020 11:07, Patrick O'Callaghan <pocallaghan(a)gmail.com> wrote:
>> On Tue, 2020-10-06 at 15:45 -0700, ToddAndMargo via users wrote:
>>> I start all my Raku programs with
>>> 1: #!/usr/bin/env raku
>>
>> Why? If you aren't adding options to 'env', surely this is the same
as
>> using '/usr/bin/bash'.
>
> No, this is a standard shebang (#!) hack to accomodate differering
> installation paths. The #! requires a fixed absolute path. So things
> which are often installed in different places (such as raku above) like
> /usr/local/bin or /opt/something and accessed via the user's $PATH
> setting, putting in this line makes the script more portable.
The user's export environment, including the PATH setting, is
automatically included, even if you have no shebang at all:
$ cat test
type python3
echo $PATH
$ chmod+x test
$ ./test
python3 is /usr/bin/python3
/usr/lib64/qt-3.3/bin:/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/poc/.local/bin:/home/poc/bin
I don't understand how your reply is related to the previous discussion.
If you don't have a shebang, then the default is to run it with the shell.