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