如何使用来自none提升命令行的su权限运行bash脚本

时间:2016-05-29 16:34:07

标签: linux

我已经在这方面敲了一段时间,但却无法找到答案。

免责声明:我是Linux新手。

因此,我收到了一个在启动时在VM上运行的脚本,并且我使用Azure模板部署和脚本扩展,因此我只能运行一个命令,并且我按照这样运行命令

sudo sh script.sh param1 param2 param3

只要它保持一行,我就可以改变运行方式。

我的脚本由Azure导入到VM并由Azure运行,所以我不确定内部工作但由于多个权限问题而导致失败(我没有编写脚本,只是通过曾经手动运行它的人 - 我不知道权限的实际问题是什么)我终于通过这种方式使用heredoc来完成运行:

#!/usr/bin/env bash
sudo su <<"EOF"

var1=$1
var2=$2
var3=$3

rest of script

EOF

现在,脚本具有明确的工作权限,但参数不会进入su环境 - 所以我发现我可以删除引用然后它会起作用。但是那样我就无法在heredoc部分内创建新的变量。

有人可以帮我吗? :)我不知道如何解决这个问题除了重写整个脚本,这可能会花费我很长时间。

谢谢!

0 个答案:

没有答案