案例1:编写一键部署软件脚本
案例2:启动脚本
案例3:编写监控脚本
案例4:编写安全检测脚本
案例5:编写进度显示脚本
一.编写一键部署软件脚本
#!/bin/bash
N=$(yum repolist | awk '/repolist/{print $2}' | sed 's/,//')
if [$N -le 0];then
echo "yum不可用"
exit
fi
yum -y install gcc openssl-devel pcre-devel
tar -xf nginx-1.12.2.tar.gz
cd nginx-1.12.2
./configure
make
make install
/usr/local/nginx/sbin/nginx -V
二.编写监控脚本
#!/bin/bash
case $1 in
start)
usr/local/nginx/sbin/nginx;;
stop)
usr/local/nginx/sbin/nginx -s stop;;
restart)
usr/local/nginx/sbin/nginx -s
usr/local/nginx/sbin/nginx;;
status)
netstat -ntulp | grep -q nginx
if [ $? -eq 0 ];then
echo "服务已启动"
else
echo "服务未启动"
fi;;
*)
echo "ERROR";;
esac
三.编写监控脚本
本案例要求编写脚本,实现计算机各个性能数据监控的功能,具体监控项目要求如下:
CPU负载
网卡流量
内存剩余容量
磁盘剩余容量
计算机账户数量
当前登录账户数量
计算机当前开启的进程数量
本机已安装的软件包数量
#!/bin/bash
ip=`ifconfig enp2s0 | awk '/inet /{print $2}'`
echo "本地IP地址是:"$ip
cpu=`uptime | awk '{print $NF}'`
echo "本机CPU最近15分钟的负载是:$cpu"
net_in=`ifconfig enp2s0 | awk '/RX p/{print $5}'`
echo "入站流量为:"$net_in
net_out=`ifconfig enp2s0 | awk '/TX p/{print $5}'`
echo "出站流量为:"$net_out
mem=`free | awk '/Mem/{print $4}'`
echo "内存剩余容量为:"$mem
disk=`df -h | awk '/\/$/{print $4}'`
echo "根分区剩余容量为:"$disk
user=`cat /etc/passwd | sed -n '$='`
echo "本地用户数量为:"$user
login=`who | wc -l`
echo "当前可登陆的用户数量为:"$login
process=`ps aux | wc -l`
echo "当前计算机启动的进程数量为:"$process
soft=`rpm -qa | wc -l`
echo "当前计算机已安装的软件数量为:"$soft
四.编写安全检测脚本
本案例要求编写脚本,防止远程ssh暴力破解密码,具体监控项目要求如下:
检测ssh登录日志,如果远程登陆账号名错误3次,则屏蔽远程主机的IP
检测ssh登录日志,如果远程登陆密码错误3次,则屏蔽远程主机的IP
#!/bin/bash
awk '/Faile/{print "登陆失败的有:" $11}' /var/log/secure
awk '/Acc/{print "登陆成功的有:" $11}' /var/log/secure
五.编写进度条
#!/bin/bash
jindu(){
while :
do
echo -ne '\033[43m \033[0m'
sleep 0.3
done
}
jindu &
cp -r  $1  $2
kill $!

转载于:https://www.cnblogs.com/luwei0915/p/10496676.html

Shell 07 项目案例相关推荐

  1. linux中自动化日志分析,Shell项目案例7-应用日志分析

    2019年录制SHell新课地址 贴切企业脚本编写思路讲解,带你玩Shell脚本编程实战. 本套课程从实际项目案例出发,近100个Shell实例讲解,由浅入深,循序渐进,带你玩转Shell编程的方方面 ...

  2. Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍

    Hadoop学习笔记-20.网站日志分析项目案例(一)项目介绍 网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edis ...

  3. Linux综合实训案例教程,Linux操作系统教程-实训与项目案例原稿.ppt

    Linux操作系统教程-实训与项目案例原稿分析 第11章 Bash 使用详解 本章内容 Shell概念 Linux下用户Shell的指定 Bash的使用 Bash的常见技巧与快捷键 Bash的变里使用 ...

  4. 100个Linux Shell脚本经典案例

    kill `ps -ef | grep redis | awk '{print $2}'` grep -w '\|aa\|bb'​​​​​​​ Linux 根据端口号杀进程的.sh脚本_xie_app ...

  5. OpenCV-PyQT项目实战(5)项目案例01:图像模糊

    欢迎关注『OpenCV-PyQT项目实战 @ Youcans』系列,持续更新中 OpenCV-PyQT项目实战(1)安装与环境配置 OpenCV-PyQT项目实战(2)QtDesigner 和 PyU ...

  6. 世界上有哪些代码量很少,但很牛逼很经典的算法或项目案例?

    来自公众号:五分钟学算法 今天分享四个代码量很少,但很牛逼很经典的算法或项目案例. 1.no code 项目地址: https://github.com/kelseyhightower/nocode ...

  7. 大数据项目开发案例_大数据分析技术——项目案例2(房价数据分析上)

    1 二手房房价分析简述 在现在这个社会,房子成为绝大多数人心中难以抹去的痛:不仅在于它的价格高不可攀,也在于我们多少有些囊中羞涩.若不是得益于亲朋好友相助.父母相帮,估计依靠着我们这点微薄的薪水去购房 ...

  8. python小项目案例-拯救Python新手的几个项目实战

    原标题:拯救Python新手的几个项目实战 Python 做小游戏 实例一:24点游戏 项目名称:经典趣味24点游戏程序设计(python) 实例二:五子棋游戏 python学习关注我们企鹅qun: ...

  9. python项目开发实战网盘-《Python项目案例开发从入门到实战》PDF版百度网盘

    「教程分享:Python项目开发从入门到实列」 本书例子具有实用性,20个不同类型的完整列子,600分钟高品质配套教学视频,完整的源码和教学课件,让你对枯燥的Python语言学习充满乐趣. 编辑推荐 ...

最新文章

  1. 【HTML/XML 11】XML和HTML的混合使用
  2. 核心板焊接之连接器与邮票孔
  3. php substr 去掉前n位_用PHP是如何做图片防盗链的
  4. 我的机器学习入门之路(下)——知识图谱、推荐、广告
  5. 你需要知道的nginx304
  6. 理解 | 理解a: float=10
  7. 2021-05-15
  8. 小米集团架构调整:王川出任CSO 李肖爽兼任大家电部总经理
  9. 关于Oracle的PARALLEL_MAX_SEVERS参数
  10. Arduino应用开发——TCP/IP无线传输
  11. 人教版五年级下册计算机试题答案,人教版五年级下册语文试卷
  12. Current_Path 获取脚本所在路径(当前路径),取当前时间做文件名(uformat)
  13. RationalDMIS 2020高级教程之变量写入EXCEL
  14. 超级牛的网站同步工具软件—端端Clouduolc
  15. MATLAB模拟陀螺仪的运动轨迹(附完整代码)
  16. linux dd iso 进度,linux小记:查看dd进度
  17. ZooKeeper 的 Watch 机制是什么?
  18. python实现正则表达式匹配
  19. Java训练work3.Exer2---跳跃最大长度
  20. Android 创建 文件 和 文件夹

热门文章

  1. python学习笔记第四节
  2. div+css 布局下兼容IE6 IE7 FF常见问题
  3. 影响力-你为什么说是
  4. 华为收购港湾核心业务 6年恩怨尘埃落定
  5. Flutter 页面托动按钮 DraggableFloatingActionButton
  6. Flutter Image 图片加载
  7. Leetcode-1155 Number of Dice Rolls With Target Sum(掷骰子的N种方法)
  8. 【codevs3160】 LCS 【后缀自动机】
  9. Python3中的bytes和str类型
  10. SQLAlchemy基本使用(Flask中)