首页 > 解决方案 > Bash:防止部分脚本作为 sudo 运行

问题描述

我有一个调用其他几个脚本的脚本,我将脚本作为 sudo 运行sudo ./main_script.sh

main_script.sh

#! /bin/bash
set -e

. /scritp1.sh
. /scritp2.sh
. /scritp3.sh
. /scritp4.sh

有什么办法可以防止其中一个下标运行为sudo?(即脚本 1 2 和 4 运行sudo正常,脚本 3 正常运行)

标签: bash

解决方案


这应该达到您的预期:

#! /bin/bash
set -e

. /scritp1.sh
. /scritp2.sh
sudo -u $SUDO_USER bash /scritp3.sh
. /scritp4.sh

推荐阅读