在shell脚本中使用sudo

我可以使用命令访问另一个用户的帐户:

sudo su - other_user 

我没有input密码。 看来这是sudo允许我的唯一命令。

之后,我可以执行文件复制和服务器重启等多项任务。 我想自动执行这些任务,以便我可以执行一个脚本,这将获得其他用户的权利并做它必须做的事情。 然而, sudo衍生另一个shell,直到我退出它阻止脚本执行。 是否有可能控制该shell,并从我的脚本发送命令到它?

更新2011-11-01:

我试着从答案和这两个命令的build议:

 sudo -u other_user whoami sudo su - other_user -c "whoami" 

要求密码。

不幸的是,我找不到sudoers来看设置。 这种情况让我感到有些懊恼,因为有权做我想做的事,但不能自动化。

使用su命令的-c选项作为另一个用户执行命令。
如果需要,还可以在脚本或shell中使用这些命令的输出。

例:

 [infeligo@server ~] cat /home/kenny/secretfile.txt cat: /home/kenny/secretfile.txt: Permission denied [infeligo@server ~] sudo su - kenny -c "cat /home/kenny/secretfile.txt" Dear diary: Today was a boring day at work. Good thing it's a friday! [infeligo@server ~] 

su的使用不是完全必要的。

 $ sudo -u other_user whoami other_user