I can't fully agree with your response. 
I understand differences between login shell, interactive shell and batch 
shell. But there are some additional details:

   - If you look into zsh documentation of zsh in point 
   (https://zsh.sourceforge.io/Doc/Release/Invocation.html#Invocation) you 
   will see statements: *Zsh tries to emulate sh or ksh when it is invoked 
   as sh or ksh respectively; more precisely, it looks at the first letter of 
   the name by which it was invoked, excluding any initial ‘r’ (assumed to 
   stand for ‘restricted’), and if that is ‘b’, ‘s’ or ‘k’ it will emulate sh 
   or ksh. Furthermore, if invoked as su (which happens on certain systems 
   when the shell is executed by the su command), the shell will try to find 
   an alternative name from the SHELL environment variable and perform 
   emulation based on that.*
   - ... and ... *The usual zsh startup/shutdown scripts are not executed. 
   Login shells source /etc/profile followed by $HOME/.profile. If the ENV 
   environment variable is set on invocation, $ENV is sourced after the 
   profile scripts.*

I've made some tests: put  in files .profile and .zprofile command echo 
".profile executed" / echo ".zprofile executed" and executed:

   - in terminal:
      - /bin/sh -->  None
      - /bin/sh -l -->  .profile executed
      - /bin/zsh --> Output from my .zshrc
      - /bin/zsh -l --> .zprofile executed and output from my .zshrc
      - /bin/zsh -i -->Output from my .zshrc
   - from BBEdit - command like echo "Hello world" 
      - result Hello world - should be .zprofile executed  as Bare Bones 
      write in link pointing by you 
   - The SHELL environment is set by the current shell *based on current 
   login shell defined for user*  as information for other processes which 
   program to call  when shell should be executed (in Linux/Unix - entry in 
   /etc/passwd file) and not represents current  executing shell - to test - 
   just ran /bin/bash and check what will be set in SHELL
   - If you check man sh - you will see the it is the wrapper program which 
   in practice call (exec inplace rather not spawn process) program pointed by 
   symbolic link /private/var/select/sh - in my case it is ... */bin/bash*, 
   please check in your system, in my opinion it also be /bin/bash. And in the 
   case of  bash the rules are the same - if it is running as /bin/sh (arg 0 
   provided to the process), bash all try to behave as /bin/sh - check man 
   bash and look for  sh (sorrounded by spaces) - part of man : *If bash is 
   invoked with the name sh, it tries to mimic the startup behavior of 
   historical versions of sh as closely as possible, while conforming to the 
   POSIX standard as well.*

If you verify all that things and agree with me, please consider to add 
additional mechanism and setup option to define how the  "Run UNIX command" 
menu option should be executed

Piotr
czwartek, 20 listopada 2025 o 18:30:28 UTC+1 Rich Siegel napisał(a):

> On 20 Nov 2025, at 12:08, Piotr Kolasiński wrote:
>
> > By running command inside "Run UNIX command" like:
> > cat $0
> > I see that in practice the command i prefixed by shebang #!/bin/sh, so it
> > means that real shell for execution is /bin/sh.
>
> If you use "Run Unix Command" to run `env`, you'll see that the active 
> shell is in fact `zsh`, provided that is your login shell.
>
> If your environment isn't what you expect it to be, you may need to make 
> some adjustments. Here's more on that: 
> https://www.barebones.com/support/bbedit/zshenv.html
>
> Enjoy,
>
> R.
>
>
> -- 
> Rich Siegel Bare Bones Software, Inc.
> <[email protected]> <https://www.barebones.com/>
>
> Someday I'll look back on all this and laugh... until they sedate me.
>

-- 
This is the BBEdit Talk public discussion group. If you have a feature request 
or believe that the application isn't working correctly, please email 
"[email protected]" rather than posting here. Follow @bbedit on Mastodon: 
<https://mastodon.social/@bbedit>
--- 
You received this message because you are subscribed to the Google Groups 
"BBEdit Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/bbedit/7e9acf95-165b-44f4-9622-f72ddb920496n%40googlegroups.com.

Reply via email to