【发布时间】:2022-11-30 22:33:19
【问题描述】:
我正在使用 Zsh。这是ENV 文件:
和我的.bash_profile:
,每个都有一个用于调试的 echo 命令。当我启动一个新的 shell 进程sh时,
它作为子 shell 运行,并且没有调试输出。如果我换成bash,
我得到相同的结果,仍然没有调试输出。
我从 this 进行了调查,了解到如果我想获取 .bash_profile 的来源,那么应该运行 bash登录模式。
接下来,我将登录时启动的 shell 更改为 sh
chsh -s /bin/sh
并打开一个新的终端选项卡,仍然没有任何回应:
当然,如果我使用bash登录
chsh -s /bin/bash
, ~/.bash_profile 将获得来源
ENV 变量按预期设置和导出。但是,为什么 ENV 文件(即 ~/.bashenv)不是由 bash 或 sh 获取的?
【问题讨论】:
标签: shell