shell脚本编写基础实战

1.判断当前磁盘剩余空间是否有20G,如果小于20G,则将报警邮件发送给管理员,每天检查一次磁盘剩余空间。

第一步:配置邮件服务

yum install mailx -y ------安装邮件服务

设置邮箱服务相关配置

vim /etc/mail.rc

第二步:编写脚本用于判断磁盘剩余空间是否小于20g如果小于则发送给管理员

第三步:将脚本放到周期性的计划任务里

vim /etc/crontab

2、判断web服务是否运行(1、查看进程的方式判断该程序是否运行,2通过査看端口的方式判断该程序是否运行),如果没有运行,则启动该服务并配置防火墙规则。

编写脚本

ps=$(ps -ef |grep nginx |grep -v grep|wc -l)

if(($ps>0))

then

echo "nginx is alreay running"

else

echo "nginx not start,waiting....."

yum install nginx -y > /dev/null

systemctl start nginx

systemctl start firewalld

firewall-cmd --permanent --zone=public --add-server=http > /dev/null

firewall-cmd --permanent --zone=public --add-port=80/tcp > /dev/null

firewall-cmd --reload >/dev/null

echo "nginx is alread running"

fi

3、使用curl命令访问第二题的web服务,看能否正常访问,如果能正常访问,则返回web serveris running;如果不能正常访问,返回12状态码。

ip=$(ip a|grep ens32|grep inet|tr -s " "|cut -d " " -f3|cut -d "/" -f1)---------获取ip

curl -s $ip >/dev/null ------访问网站得到状态码

if (($?==0))--------0为成功访问

then

echo "web server is running"

else

echo "web not accessible"

exit 12

fi

相关推荐
va学弟几秒前
Java 网络通信编程(9):从 BIO 到 NIO
java·运维·服务器·网络
凡人叶枫2 分钟前
Effective C++ 条款05:了解 C++ 默默编写并调用哪些函数
java·linux·开发语言·c++·effective c++·编程范式
HackTwoHub3 分钟前
关于文件上传漏洞深度绕过利用教程,突破命令执行限制
运维·安全·web安全·网络安全·系统安全·安全架构
Web极客码3 分钟前
如何用 Docker 容器与“看门狗”脚本安全驯服 OpenClaw
服务器·人工智能·ai编程
William.csj7 分钟前
服务器——终端ssh可以连接进服务器,vscode连接不进去服务器的解决办法
服务器·vscode·ssh
星光不负赶路人!19 分钟前
【工作记录】sqlserver数据库操作及迁移
服务器·数据库·sqlserver
ftf拿破仑21 分钟前
嵌入式面试高频问题
linux·面试
女神下凡24 分钟前
轻量应用服务器 与 云服务器ECS 区别
运维·服务器
实在智能RPA24 分钟前
培训Agent如何根据岗位自动发放计划?——2026企业级智能自动化实战指南
运维·服务器·人工智能·ai·自动化
syagain_zsx35 分钟前
Linux进程控制学习总结(1/2)
linux·运维·学习