Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经开始学习 bash 脚本了。我有一个概念上的疑问,如何确定脚本是作为 root 用户还是普通用户运行。?
如果用户为 0,我知道 UID,但我不明白如何实现它。?谁能解释我如何使它工作。?"Not a root user"是否可以像以普通用户身份运行脚本时一样打印消息?
"Not a root user"
我的脚本很简单hello_world.sh:
hello_world.sh
#!/bin/bash echo 'Hello World';
POSIX shell 具有内置变量$UID和$EUID. 您还可以查看来自 的退货id -u。在任何情况下,id 0 都表示 root。
$UID
$EUID
id -u
#!/bin/sh if [ $EUID -ne 0 ]; then echo "This script should be run as root." > /dev/stderr exit 1 fi