第十周 文本处理工具awk
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第十周 文本处理工具awk相关的知识,希望对你有一定的参考价值。
1、编写脚本selinux.sh,实现开启或禁用selinux
2、统计/etc/fstab文件中每个文件系统类型出现的次数
awk ‘/^UUID/{fs[$3]++}END{for(i in fs){print i ":" fs[i]}}‘ /etc/fstabbr/>![](https://s4.51cto.com/images/blog/202006/03/7cc2ba3d62cab98497e180c43c7a1ac1.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
3、提取字符串Yd$C@M05MB%9&Bdh7dq+YVixp3vpw中的数字
echo "Yd$C@M05MB%9&Bdh7dq+YVixp3vpw" | awk ‘{gsub(/[^0-9]/,"",$0);{print $0}}‘
4、解决DOS***生产案例:根据web日志或者网络链接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频率每隔5分钟,防火墙命令为:iptables -A INPUT -s IP -j REJECT
vim monitor_access.sh
#!/bin/bash
awk ‘{count[$1]++}END{for(i in count){if(count[i]>100){print count[i],i}}}‘ /var/log/httpd/access_log|sort -nr > /data/iplist.txt
while read count ip;do
? iptables -A INPUT -s $ip -j REJECT &> /dev/null
? echo "来自$ip IP5分钟内访问了webserver超过100次,实际请求次数:$count,威胁hostname
主机安全,已被拒绝!!!" >> /data/iptables.log
done < /data/iplist.txt
添加计划任务5分钟执行一次
crontab -e
/5 * /bin/bash /data/monitor_access.sh &> /dev/null
以上是关于第十周 文本处理工具awk的主要内容,如果未能解决你的问题,请参考以下文章