编程说明:
使用case语句实现响应客户端输入的请求,返回对应的页面.
源代码:
#!/bin/bash
#功能描述:定义功能菜单,将使用case语句来判断用户输入的选项,并根据选项菜单输出对应的>窗口,监测不同的系统性能
clear
echo -e "\033[42m--------------------------------------\033[0m"
echo -e "\e[2;10H菜单\t\t#"
echo -e "#\e[32m 1.查看网卡信息\e[0m #"
echo -e "#\e[32m 2.查看内存信息\e[0m #"
echo -e "#\e[32m 3.查看磁盘信息\e[0m #"
echo -e "#\e[32m 4.查看CPU信息\e[0m #"
echo -e "#\e[32m 5.查看账户信息\e[0m #"
echo -e "#\e[32m 6.退出\e[0m #"
echo -e "\033[42m--------------------------------------\033[0m"
echo
read -p "请输入选项[1~5]:" key
case $key in
1)
ifconfig | head -2;;
2)
mem=$(free | grep Mem | tr -s " " |cut -d " " -f7)
echo "本机内存剩余容量为: ${mem}K."
;;
3)
root_free=$(df | grep /$ | tr -s " " | cut -d " " -f4)
echo "本机根分区剩余容量为:${root_free}K."
;;
4)
cpu=$(uptime | tr -s " " |cut -d " " -f13)
echo "本机CPU 15min的平均负载为:$cpu."
;;
5)
login_number=$(who | wc -l)
total_number=$(cat /etc/passwd | wc -l)
echo "当前系统账户为$USER"
echo "当前登录系统的账户数量为:$login_number"
echo "当前系统中总用户数量为:$total_number"
;;
6)
exit;;
*)
echo "输入有误,超出范围"
;;
esac
脚本运行结果:
./menu.sh
--------------------------------------
菜单 #
# 1.查看网卡信息 #
# 2.查看内存信息 #
# 3.查看磁盘信息 #
# 4.查看CPU信息 #
# 5.查看账户信息 #
# 6.退出 #
--------------------------------------
请输入选项[1~5]:2
本机内存剩余容量为: 12245124K.
该脚本还可以与while循环连用,就不会说执行一遍就退出了系统.
网友评论