我知道您可以使用su
它在终端内切换用户。由于我使用的帐户是非 root 用户(没有超级用户权限),因此它会提示我登录的用户输入密码。
有没有办法su
使用一行命令来登录?例如,
su -l USERNAME PASSWORD
例如,可以在 bash 脚本中使用类似这样的内容。
答案1
虽然我不推荐它(除非用例明确要求它),但是您可以在 shell 脚本中使用类似下面的内容:
"echo PASSWORD | sudo -S COMMAND"
其中 PASSWORD 是用户密码,COMMAND 是在提升的权限级别运行的命令。
请注意,该-S
选项很重要,因为它将输入从 term 重定向到标准输入。请参阅Sudo 手册了解更多详细信息。