gpt4 book ai didi

linux - 为什么 userA$ sudo su userB -c 'printenv' 不打印 userB 的环境详细信息

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:22:27 25 4
gpt4 key购买 nike

我有两个用户 userA 和 userB。

我想打印 userB 的 env 详细信息。我正在从用户 A 运行以下命令。

userA$ sudo su userB -c 'printenv'

但它会打印用户 A 的环境详细信息。如何解决?

如果我切换到 userB 并执行 printenv 然后它会按预期打印 userB 的环境详细信息。 PYTHONPATH 和其他变量也发生了同样的事情。

请注意,我需要像在单个命令中那样运行命令。我不能先切换到 userB 然后运行 ​​printenv

最佳答案

你应该使用这个:

userA$ sudo su - userB -c 'printenv'

su 连字符 (-) 将环境变量更改为新用户的环境变量,由他们的 ~/.bashrc 指定。

关于linux - 为什么 userA$ sudo su userB -c 'printenv' 不打印 userB 的环境详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40153395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com