0

我需要在 sudo su 之后执行“monit restart haproxy”命令。

这是我的 script.sh

sudo su
monit restart haproxy.

在这里,如果我将执行 script.sh 文件,那么它将挂起并且不执行 monit restart haproxy 命令。

任何想法?

4

2 回答 2

0

sudo命令要求您输入密码,这就是它会挂起的原因,您可以使用管道将密码传递给命令,如下所示:

echo <password> | sudo su
monit restart haproxy.
于 2016-11-03T11:55:13.250 回答
0

这里有一些关于 sudo su 的信息。您需要输入 sudo 或 su 命令的密码,这是我发布的链接中的一些引用,这可能是您问题的根源:

sudo - sudo 旨在以 root 权限运行单个命令。但与 su 不同的是,它会提示您输入当前用户的密码。此用户必须在 sudoers 文件中(或在 sudoers 文件中的组)。默认情况下,Ubuntu 会“记住”您的密码 15 分钟,这样您就不必每次都输入密码。

于 2016-11-04T03:10:36.883 回答