搬砖 Shell 脚本整理
date
Sep 25, 2020
Last edited time
Jan 14, 2024 11:34 AM
status
Published
type
Post
slug
some-shell-scripts-collect
tags
Tool
Shell
Linux
summary
这是一篇关于Shell脚本的整理文章,其中包括了一些实用的Shell脚本和命令组合,以及它们的用法和作用说明。文章内容涵盖了删除备份文件、批量重命名文件、变量替换、去除换行符、统计匹配行数、分析Nginx日志、DDoS攻击防范、解压缩脚本、Git修改历史commit信息、以及一些网络连接和Docker容器日志的清空操作。
此处整理收集一些会用到的 Shell 脚本/命令组合,方便查阅
- 删除n天前的备份文件
- 批量重命名文件
此处使用了 Shell 中的变量替换,详细可参见
主要为如下内容:
变量形式 | 作用说明 |
${变量#关键词} ${变量##关键词} | 若变量内容从头开始的数据符合『关键词』,则将符合的最短数据删除 若变量内容从头开始的数据符合『关键词』,则将符合的最长数据删除 |
${变量%关键词} ${变量 %% 关键词} | 若变量内容从尾向前的数据符合『关键词』,则将符合的最短数据删除 若变量内容从尾向前的数据符合『关键词』,则将符合的最长数据删除 |
${变量/旧字符串/新字符串} ${变量//旧字符串/新字符串} | 若变量内容符合『旧字符串』则『第一个旧字符串会被新字符串取代』 若变量内容符合『旧字符串』则『全部的旧字符串会被新字符串取代』 |
- 去除换行符
- 统计匹配行数
- 分析 Nginx 日志,统计同一IP访问次数并排序
- DDoS 攻击防范(自动封禁IP)
- ssh_config 配置
- 解压缩脚本
- Git 修改历史commit信息
- 查找请求数前20个IP(请求来源):
- 查找较多time_wait连接
- 找查较多的SYN连接
- 根据端口列进程
- 清空 Docker 容器日志