shell - 如何确定 shell 脚本是否以 root 权限运行?

标签 shell permissions sudo

我有一个脚本,我想要求以 su 权限运行,但有趣的脚本命令会在脚本中出现得很晚,所以我想预先进行一次干净的测试,以确定在没有 SU 的情况下,脚本是否会失败能力。

对 bash、sh 和/或 csh 执行此操作的好方法是什么?

最佳答案

bash/sh:

#!/usr/bin/env bash
# (Use #!/bin/sh for sh)
if [ `id -u` = 0 ] ; then
        echo "I AM ROOT, HEAR ME ROAR"
fi

csh:
#!/bin/csh
if ( `id -u` == "0" ) then
        echo "I AM ROOT, HEAR ME ROAR"
endif

关于shell - 如何确定 shell 脚本是否以 root 权限运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6362428/

相关文章:

仅从最低 sdk 版本开始授予 Android 权限

php - "--no-scripts"选项是否足以解决以 root 身份运行 composer 的安全问题?

bash - 用空格解析var

vba - VBA 中的 Shell 命令不使用 PATH 变量(从 VBA 执行 .jar)

arrays - 使用其中包含空格的元素创建 Bash 数组

android - 登录尝试时空白权限屏幕

bash - 如何提取多格式的多层嵌套压缩文件

相机和互联网的Android权限

python - 有没有办法同时使用 fabric run() 和 sudo() ?

linux - 如何从脚本中为 sudo 提供密码?