linux - BASH_VERSION 为空,即使 SHELL 是/bin/bash

标签 linux bash shell ubuntu

我在/etc/profile.d/script.sh 中执行脚本时遇到了问题。在我的一台机器上(只有这台,在其他机器上运行良好),当我这样做时

echo "$BASH_VERSION" >> /home/synek317/log
echo "$SHELL"        >> /home/synek317/log

结果是BASH_VERSION是空的,但是SHELL/bin/bash。但是,当我运行终端并键入 echo $BASH_VERSION 时,它被正确填充。

我在 Ubuntu 16.04.1 上运行它。

您是否知道为什么在执行 /etc/profile.d/ 脚本期间此变量为空?

最佳答案

根据定义,/etc/profile.d 脚本不由 Bash 运行。

关于linux - BASH_VERSION 为空,即使 SHELL 是/bin/bash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39835804/

相关文章:

linux - 为什么我必须创建自定义 Linux 发行版?只是内存的问题吗?

python - 查找与通配符字符串的所有可能匹配项

bash - 等待在 Bash 中创建文件

python - OSX Automator 无法使用 shell 中的模块运行 Python 脚本

linux - 从 virtualhost proxypass 中排除别名

ruby-on-rails - amazon EC2 linux 上的服务 unicorn 启动时出现意外 token `(' 附近的语法错误

c - SECCOMP:如何模拟 malloc、realloc 和 free?

bash - 将 stdin 传递给 plistbuddy

json - 修改JSON jq中的键值数组

bash - 在 shell 中使用docker命令显式使用别名