我有这样的代码:
echo 'test'
usr=$USER
sudo sh -c "exec su $usr"
echo 'test1'
例如,echo 'test'
在代码中,我配置了一些要求我重新登录新shell的代码。但是,在哪里有代码,echo 'test1'
我需要继续使用重新加载的新Shell进行配置。
有没有办法自动做到这一点?像以并行方式启动新的shell还是类似的东西?
Ubuntu 14.04,bash。
更新:
例如,我需要安装virsh,但安装后需要sudo才能运行。我的脚本配置了将$ USER添加到libvirtd组的组。然后,我需要重新登录。我可以用做到这一点sudo sh -c "exec su $usr"
。之后,我需要脚本来继续执行。有办法吗?
更改visudo
您的sudoers配置,以便不再要求您输入密码。请参阅man visudo
和man sudoers
。
我建议使用heredoc:
echo 'test'
usr="$USER"
sudo su - "$USER" << EOF
echo 'test1'
EOF
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句