On 17/09/2020 10:40, Tom H wrote:
On Thu, Sep 17, 2020 at 9:33 AM Ottavio Caruso
<ottavio2006-usenet2...@yahoo.com> wrote:
On 17/09/2020 00:58, Ashlen wrote:
On 20/09/15 05:49PM, Ottavio Caruso wrote:

Maybe it's just because OpenBSD sh is just ksh in disguise or there
might be other reasons that I obviously don't know.

Yep, you're right. They share the same inode.

ls -li /bin/{,k}sh

77862 -r-xr-xr-x  3 root  bin  613656 Sep 15 12:10 /bin/ksh
77862 -r-xr-xr-x  3 root  bin  613656 Sep 15 12:10 /bin/sh

sh(1) also attests to this.

Thanks but I gave that for granted. My question was about not
exporting PS1 to subshells. In theory, it shouldn't be exported but
it does get exported if one uses ENV=.kshrc vs sourcing .kshrc.

You've said that you're now sourcing "$HOME/.kshrc" if "SKSH_VERSION" exists.

You could add the sourcing of "$HOME/.shrc" if "$SH_VERSION" exists.

Or you could export ENV and use a case-esac of this kind:

case "$0" in
*ksh)
...
PS1='\u@\h:\w\$ '
;;
*sh)
...
PS1='${USER}@${HOST}:${PWD}\$ '
;;
esac



This solves the problem. Thanks.

--
Ottavio Caruso



Reply via email to