linux - 使 bash 配置文件对非登录 shell 可见

标签 linux

我有一个 .bash_profile 并且我在这个 shell 中有几个命令。我以 user1 身份登录。现在在我的终端中,我执行 su - user2。

当我使用 user2 时,我无法调用我在 .bash_profile 中创建的这些命令。我怎样才能使 PATH 元素和环境变量也对 user2 可见?当我在使用 user2 时执行 echo $PATH 时,我得到了这个:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/git/bin:/usr/local/go/bin

当我使用 user1 执行 echo $PATH 时,我得到了更多。如何让这个额外的 PATH 元素也对 user1 可见?

最佳答案

su <user> (没有 - )不读取 的 shell 初始化文件。从而保留之前用户的设置。

关于linux - 使 bash 配置文件对非登录 shell 可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36708217/

相关文章:

c - 在 linux x86_64 下非常快速地 ip-as-int 查找 IPv4 套接字?

c - scandir 按子串过滤

c - malloc() 中的奇怪段错误 - C

linux - 如何在不连接它们的情况下计算 2 个字段中的唯一值?

c++ - 如何将现有的分布式服务应用移植到DCOS?

c++ - 在不附加 GDB 的情况下获取所有线程的堆栈跟踪

linux - 以更好的方式分配变量值

c - 如果我们将两个具有不同数据类型的同名变量链接起来怎么办?

c++ - 在cuda中,内核函数中没有完全显示线程索引

regex - 正则表达式在 linux bash 中获取 X 数量的值