bash 脚本中的 sudo:并不总是等待密码

bash 脚本中的 sudo:并不总是等待密码

我有一个简单的 bash 脚本,如下所示:

#!/usr/bin/env bash

sudo ./some_other_script_01
sudo ./some_other_script_02

当我执行这个脚本时,我总是像往常一样查看密码提示:

[sudo] password for user: 

然而,有时,令人费解的是,在我输入密码之前,它就./some_other_script_01开始执行(大概没有 root 权限)。即使发生这种情况做过提示我输入密码(我尚未提供)。

目前,当发生这种情况时,我必须终止脚本并重新启动(以便它们以 root 权限执行)。

答案1

sudo 一次就够了,用 sudo 启动就可以了wrapper.sh。检查您是否在脚本中具有 root 权限,不再需要 sudo 调用。

sudo ./wrapper.sh

包装器.sh:

#!/usr/bin/env bash

if [ "$EUID" -ne 0 ]
  then echo "Please run as root"
  exit
fi

./some_other_script_01
./some_other_script_02

相关内容