Bash Scripting:要求脚本以root身份运行(或使用sudo)

Modified on: Wed, 22 May 2019 06:00:02 +0800

我正在尝试编写一个bash脚本(在Ubuntu中),它将使用tar备份目录。

如何检查脚本以便它只能以root身份运行(或使用sudo)?

例如,如果用户运行该脚本,则应该说该脚本必须使用sudo权限运行,然后退出。如果脚本以root身份执行,它将继续通过检查。

我知道必须有一个简单的解决方案,我只是无法通过谷歌搜索找到它。

最佳答案

要拉出有效的uid,请使用此命令:

id -u

如果结果为“0”,则脚本要么以root身份运行,要么使用sudo。您可以通过执行以下操作来执行检查:

if [[ $(/usr/bin/id -u) -ne 0 ]]; then
    echo "Not running as root"
    exit
fi
作者:,Scott Pack

相关问答

添加新评论