您可以运行 sudo -c 并保留权限吗?

您可以运行 sudo -c 并保留权限吗?

您能否运行su root -c "$some_command"并保持以用户身份登录root,而不是在执行命令后立即删除权限(即返回到普通用户)?

换句话说:我想执行命令 as root,并保留su特权直到exit

例如,目前,我只需:
1. 执行su. 2.当出现提示时,
输入密码。 3. 执行(rootPassword:
$some_command或为了例子 source ./.bashrc)。
4. 保留提升的权限,并做一些其他事情,直到...
5. exit.

而如果我使用-c,它只会运行第一个命令并退出,而不给我任何时间去做我需要做的其他事情。如果没有,那也不是世界末日,还有其他方法可以处理它,但是能够以这种方式做到这一点就很好了。


注意:当然,我认为su root -l -c "$some_command"这是解决方案,但是:
a。它更改为/root目录(这并不是真正的问题)。
b.当-l发出 时-c,它执行第一个命令并退出。

答案1

您可以启动另一个 shell:

su root -c "${some_command}; bash"

bash如有必要,请更换为您最喜欢的外壳。

相关内容