Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合。
Shell可以直接使用在win/Unix/Linux上面,并且可以调用大量系统内部的功能来解释执行程序,如果熟练掌握Shell脚本,可以让我们操作计算机变得更加轻松,也会节省很多时间。
本篇文档整理了来自网络的109个shell脚本,希望对大家有所帮助。代码清晰可复制,电子版有利于大家随时练习,提升实战能力,是融汇了Shell脚本所有核心知识点的集大成之作,是学习、提升、面试的必备精品,建议大家收藏保存起来。
【文档领取见文末】
【文档领取见文末】
1.Dos 攻击防范(自动屏蔽攻击IP)
2.Linux 系统发送告警脚本
3.MySQL 数据库备份单循环
4.MySQL 数据库备份多循环
5.Nginx 访问访问日志按天切割
6.Nginx访问日志分析脚本
7.查看网卡实时流量脚本
8.服务器系统配置初始化脚本
9.监控 100 台服务器磁盘利用率脚本
10.并发从数台机器中获取 hostname,并记录返回信息花费的时长,重定向到一个文件 hostname.txt中,在全部完成后输出花费时长最短的那台机器的 CPU 信息。
上下滚动查看更多
11.统计/proc 目类下Linux进程相关数量信息,输出总进程数,runninq 进程数,stoped 进程数,sleeing进程数,zo mbie 进程数。
12.把当前目录(包含子目录)下所有后缀为".sh"的文件后缀变更为".shell",之后删除每个文件的第二行。
13.判断目录/tmp/jstack是否存在,不存在则新建一个目录若存在则删除目录下所有内容。
14.从 test.loq中截取当天的所有gc 信息日志,并统计 gc 时间的平均值和时长最长的时间。
15.查找80端口请求数最高的前 20个IP地址,判断中间最小的请求数是否大于 500,如大于 500,则输出系统活动情况报告到 alert.txt,如果没有,则在 600s后重试,直到有输出为止。
16.将当前目录下大于10K的文件转移到/tmp 目录,再按照文件大小顺序,从大到小输出文件名。
17.企业微信告警
18.FTP客户端
19.SSH客户端
20.Saltstack 客户端
上下滚动查看更多
21.vCenter 客户端
22.获取域名ssl 证书过期时间
23.发送今天的天气预报以及未来的天气超势图
24.SVN 完整备份
25.zabbix 监控用户密码过期
26.构建本地YUM
27.备份当前日期文件
28.DOS攻击防范(自动屏蔽攻击IP)
29.批量创建多少个用户并设置密码
30.快速在Ubuntu 20.04上架设LAMP服务器及WordPress 博客
上下滚动查看更多
31.每天自动备份 MySQL 数据库
32.MySQL 数据库备份单循环
33.MySQL 数据库备份多循环
34.Nginx日志按要求切割
35.生成10个随机数保存于数组中并找出其最大值和最小值
36.查看网卡实时流量
37.服务器系统配置初始化
38.批量创建多个用户并设置密码
39.一键查看服务器利用率
40.找出占用CPU 内存过高的进程
上下滚动查看更多
41.查看网卡的实时流量
42.监控多台服务器磁盘利用率脚本
43.批量检测网站是否异常并邮队件通知
44.批量主机远程执行命令脚本
45.一键部署LNMP网站平台脚本
46.监控MySQL主从同步状态是否异常脚本
47.MySgl数据库备份脚本
48.Nginx访问日志分析
49.Nginx访问日志自动按天(周、月)切割
50.自动发布Java项目(Tomcat)
50.自动发布Java项目(Tomcat)
上下滚动查看更多
51.自动发布PHP项目
上下滚动查看更多
51.自动发布PHP项目
52.DOS攻击防范(自动屏蔽攻击IP)53.目录入侵检测与告警
54.本地选择脚本auto build.sh
55.服务器编译脚本 build.sh首先第一个使用的就是{$#}和($@)其次使用了字符串截取的操作
56.本地expect登陆拷贝scp exec.sh脚本
57.检测两台服务器指定目录下的文件—致性
58.定时清空文件内容,定时记录文件大小
59.检测网卡流量,并按规定格式记录在日志中
60.计算文档每行出现的数字个数,并计算整个文档的数字总数
61.从FTP服务器下载文件
62.连续输入5个100以内的数字,统计和、最小和最大
63.监测 Nginx 访问日志 502情况,并做相应动作
64.将结果分别赋值给变量
65.批量修改文件名
66.统计当前目录中以html结尾的文件总大小
67.扫描主机端口状态
68.输入数字运行相应命令
69.Expect 实现 SSH 免交互执行命令
70.监控 httpd 的进程数,根据监控情况做相应处理
71.批量修改服务器用户密码
72.iptables 自动屏蔽访问网站频须繁的IP
73.根据web访问日志,封禁请求量异常的IP,如IP在半小时后恢复正常,则解除封禁
74.判断用户输入的是否为IP地址
76.轮询检测Apache状态并启用钉钉报警
77.一台监控主机,一台被监控主机。被监控主机分区使用率大于80%,就发告警部邮件。放到crontab里面,每10分钟执行一次。
78.监控主机的磁盘空间,当使用空间超过90%就通过发mail 来发警告
79.自动ftp上传
80.mysqlbak.sh备份数据库目录脚本
81.打印彩虹
82.打印菱形
83.expect实现远程登陆自动交互
84.http心跳检测
85.PV过量自动实现防火墙封IP
86.shellI实现自动安装
87.shell实现插入排序
88.bash实现动态进度条
89.根据文件内容创建账号
90. 红色进度条
91.监控服务器网卡流量
92.检测CPU剩余百分比
93.检测磁盘剩余空间
94.bash-实现检测apache状态并钉钉报警
95.内存检测
96.剩余inode检测
97.判断哪些用户登陆了系统
98.批量创建账号
99.批量扫面存活
100.正则匹配IP
101.正则匹配邮箱
102.实现布片效果
103.剔除白名单以外的用户
104.一键安装 MongoDB 数据库脚本
105.使用mobaXtrem显示CentOS上的图形工具
106.一键申请多个证书 shell 脚本
107.基于CentOS一键编译安装Redis脚本
108.基于CentOS一键安装tomcat脚本
109.一键证书申请和颁发脚本
文章浏览阅读1.7w次,点赞19次,收藏109次。等值关系式重言蕴含式真值表_离散数学推理规则公式
文章浏览阅读6.1k次,点赞3次,收藏2次。有时我们打开.properties文件时,中文显示为utf8编码格式,可以在file->setting->editor->file encodings下把transparent native-to-ascll conversion勾选上就行了。_idea properties 显示中文备注
文章浏览阅读4.6k次。海康视频解码YUV420p格式_摄像头视频流控解码
文章浏览阅读2.6k次,点赞2次,收藏12次。资料地址官网:https://prometheus.io/Github: https://github.com/prometheus/prometheus什么是普罗米修斯Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包 。自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发人员和用户社区。现在,它是一个独立的开源项目,并且独立于任何公司进行维护。为了强调这一点并阐明项目的治理结构,Prometheus在2016年加入了 Cloud_netflix的use方法
文章浏览阅读1.2k次。原标题:大学值得选的“选修课”,一点不比专业课差,能选上最好认真听文/小哈你是怎样对待你的选修课的?以前经常听学长学姐们说过这样一句话,“上大学之后,专业课选逃,选修课必逃”。不知道大家是不是也是这样的呢?很多同学其实对于自己的选修课并不是十分在意,甚至是抱有那种可有可无的态度,更有很多人理所应当的认为选修课就是拿来逃课用的。 所以,大家在上选修课的时候也基本都不怎么认真,完全就是冲着学分去的。如..._大学选修课和编程有关的
文章浏览阅读671次。❝本文转自 TinyChen 的博客,原文:https://tinychen.com/20220728-dns-11-coredns-08-healthcheck/,版权归原作者所有。欢迎投稿,投稿请添加微信好友:cloud-native-yang本文主要讲解介绍 CoreDNS 内置的两个健康检查插件 health 和 ready 的使用方式和适用场景。health 插..._dns 后端服务健康检查
文章浏览阅读1.7k次,点赞4次,收藏3次。L1-040 最佳情侣身高差 (10 分)专家通过多组情侣研究数据发现,最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。如果符合,你俩的身高差不管是牵手、拥抱、接吻,都是最和谐的差度。下面就请你写个程序,为任意一位用户计算他/她的情侣的最佳身高。输入格式:输入第一行给出正整数N(≤10),为前来查询的用户数。随后N行,每行按照“性别 身高”的格式给出前来查询的用..._python最佳的情侣身高差遵循着一个公式:(女方的身高)×1.09 =(男方的身高)。下面
文章浏览阅读251次。redis算是缓存界的老大哥了,最近做的事情对redis依赖较多,使用了里面的发布订阅功能,事务功能以及SortedSet等数据结构,后面准备好好学习总结一下redis的一些知识点。先看下redis发布订阅的结构:其中发布者跟订阅者之间通过channel进行交互,channel分为两种模式。一、redis发布订阅命令简介redis中为发布订阅(pub/sub)功能提供了六个命令,分为两种模式。由_c++ redis pub subs
文章浏览阅读4.4k次。dp[i]表示以i结尾的合法的括号序列个数维护一个栈,左括号push他的位置到栈中,右括号取出栈顶 dp[i] = dp[sta[top] - 1] + 1然后对dp数组求和int sta[MAXN * 10], top, ans[MAXN * 10];ll Ans;char s[MAXN * 10];int main() { in, s + 1; int len = str..._输出s中不同的合法括号子序列的数量
文章浏览阅读1.2k次。第一章 传感器技术基础传感器的静态特性指标1️⃣线性度(Linearity):是指传感器的输出与输入之间数量关系的线性程度2️⃣迟滞(Hysteresis,回差):传感器在正(输入量增大)反(输入量减小)行程中输入曲线不重合程度的指标3️⃣重复性(Repeatability):是指传感器在输入同一方向连续多次变动时所得特性曲线不一致的程度️灵敏度(Sensitivity):传感器输出..._hysteresis 响应差
文章浏览阅读2.2k次。syslog日志接受服务器适用于centos6以上且使用rsyslog服务的终端环境1.采用UDP协议发送和接收,在远程服务器端配置文件/etc/rsyslog.conf开启下面两行# Provides UDP syslog reception$ModLoad imudp$UDPServerRun 5142.编辑/etc/sysconfig/syslog文件,让服务器能够接受客户端传来的数据:在“SYSLOGD_OPTIONS”行上加“-r”选项以允许接受外来日志消息。# vi /etc/_syslog 514
文章浏览阅读3.8k次,点赞2次,收藏4次。有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务。在解问题之前先来看看Linux的启动流程。一、Linux的启动流程 主要顺序就是: 1. 加载内核 2. 启动初始化进程 3. 确定运行级别 4. 加载开机启动程序 5. 用户登录启动流程的具体细节可以看看Linux 的启动流程 第4步加载启动程序其实是两步:init进程逐一加载开机启动程序,..._centos 6 自动重启 脚本