shell第三天

题目

1.判断当前主机的CPU生产商,其信息在/proc/cpuinfo文件中vendor_id一行中
2.根据用户输入成绩,判断优良中差(A,B,C,D, 注意边界问题)
3.判断 sshd 进程是否运行,如果服务启动打印启动,未启动则打印未启动(使用查看进程和端口两种方式)
4.检查主机是否存活,并输出结果(使用for循环实现:主机数>=2)
5.编写脚本,判断当前系统剩余内存大小,如果低于100M,邮件报警管理员,使用计划任务,每
10分钟检查一次。

 1.判断当前主机的CPU生产商,其信息在/proc/cpuinfo文件中vendor_id一行中

示例:

vendor=$(grep "vendor_id" /proc/cpuinfo |uniq|awk -F: '{print $NF}')
if [[ "$vendor" =~ [[:space:]]*GenuineIntel$ ]]
then
 echo "intel"
elif [[ "$vendor" =~ [[:space:]]*AuthenticAMD$ ]]
then
 echo "AMD"
else
 echo "unknow"
fi
   

2.根据用户输入成绩,判断优良中差(A,B,C,D, 注意边界问题)

示例:

read -p "please input your score(0~100):" score
if [[ $score > 84 ]];then
        echo "A"
elif [[ $score > 69 ]];then
        echo "B"
elif [[ $score > 59 ]];then
        echo "C"
else
        echo "D"
fi
 

3.判断 sshd 进程是否运行,如果服务启动打印启动,未启动则打印未启动(使用查看进程和端口两种方式)

示例:

[root@haha ~]# ps -ef | grep sshd | grep -v grep | wc -l
3
[root@haha ~]# ss -lntup | grep -w 22 | wc -l
2
[root@haha ~]# netstat -lntup | grep -w 22 | wc -l
2
 

4.检查主机是否存活,并输出结果(使用for循环实现:主机数>=2)

ping -c 2 -w 1 172.25.254.128 &> /dev/null
if [ $? -eq 0 ];then
 echo host 172.25.254.128 is running
else
 echo host 172.25.254.128 is not running
fi
 

5.编写脚本,判断当前系统剩余内存大小,如果低于100M,邮件报警管理员,使用计划任务,每
10分钟检查一次。


if [ "$free_mem" -le 100 ];then

echo "剩余内存:${free_mem},低于100M" | mail -s "内存报警" root@localhost

fi
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值