Shell 脚本-07-检测是否为 root 用户
UID 版本, root 用户 UID 为0
脚本需求:
检测本机当前用户是否为超级管理员,如果是管理员,则使用 yum 安装 httpd,如果不是,则提示您非管理员
脚本内容:
#! /bin/bash
# UID 变量为系统内置的当前用户的UID的变量
if [ $UID -eq 0 ];then
echo '当前用户为 $USER , 正在为您安装 httpd 服务,请您耐心等候…………'
yum -y install httpd > /dev/null 2>&1 && systemctl start httpd
httpd=`netstat -anpt | grep httpd | awk '{print $4}' | awk -F '' '{print $4 $5}'`
if [ $httpd == "80" ];then
echo 'httpd 已成功安装,并成功启动!!!'
exit
else
echo 'Httpd 安装启动失败'
exit
fi
else
echo '当前用户为:'$USER',您不是管理员用户,没有权限安装软件!!!'
exit
fi
脚本思路:
通过系统内置的当前用户的变量,来获取当前的用户是否为 root,使用 if 对其进行判断。
脚本输出:
- root 用户输出
[root@localhost script]# sh 07.sh
当前用户为 $USER , 正在为您安装 httpd 服务,请您耐心等候…………
httpd 已成功安装,并成功启动!!!
- 非 root 用户
[user1@localhost script]$ sh 07.sh
当前用户为:user1,您不是管理员用户,没有权限安装软件!!!