sudo -u $USER 和 su - $USER 作为非 root 用户的区别

用户1757703

为什么第一个不起作用并且无法condaPATH上找到而第二个起作用?

$ su - $NB_USER -c "echo $PATH && conda --version"
/opt/conda/condabin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-sh: 1: conda: not found
$ sudo -u $NB_USER -- echo $PATH && conda --version
/opt/conda/condabin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
conda 4.9.2
谢恩主教

我正在将@Kusalananda的评论变成社区答案,所以这个问题不会一直没有答案。

在这两个命令中,$PATH值来自交互式 shell 调用susudo,而不是来自实际尝试调用 的 shell conda这是由于命令的双引号(第一个命令)和不引用(第二个命令)引起的。在第二个命令中,您甚至不执行condawith sudosudo命令以 结束&&)。您可能想尝试sudo -u "$NB_USER" sh -c 'echo $PATH && conda --version'或类似的东西(sudo我的机器上没有,所以无法正确测试)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

sudo -u和su -c之间的区别

“ sudo -s”和“ su root”之间有什么区别?

如何获取sudo -u $ user以使用用户env?

sudo -i和sudo su之间的区别

sudo su和sudo fish之间的区别

Su和Su-to-root之间的区别?

以root用户身份登录并执行“ su-user”而不是以user身份登录有什么意义?

匿名非root用户sudo用户和“成为”特权升级

引用ssh $ host $ FOO和ssh $ host“ sudo su user -c $ FOO”类型的构造

将函数和变量转发到sudo su-<user> << EOF

shebang行中的`sudo -u user`

sudo su和just su有什么区别?

sudo su-和su-之间的区别

“ sudo -i”和“ sudo su-”有什么区别

sudo -s和sudo su-之间的区别

以用户身份登录和通过root使用su更改用户之间有什么区别?

“ su”,“ sudo -s”,“ sudo -i”和“ sudo su”之间有什么区别?

root用户和Ubuntu中的sudo命令有什么区别?何时应使用root?

root和sudo有什么区别?

Ansible:如何使用“ sudo su -c <COMMAND> <USER>”以另一个用户身份执行命令?

为什么以root用户身份在我的CentOS 7计算机上以“ su user”身份询问用户密码?

Sudo su不要求密码从Sudo用户切换到Root用户

如何使用sudo -u USER设置环境变量?

命令“ su -s”和“ sudo -s”有什么区别?

sudo和su -c有什么区别

sudo -i和su有什么区别?

使用su-vs“ ssh user @ machine”作为lucid用户的环境

如何在非root用户bash和“ sudo -i”打开的shell之间共享bash别名?

su-用户与sudo su-用户