linux awk 教程,linux awk使用
一、編寫腳本,實現(xiàn)開啟或禁用SELinux功能。
#!/bin/bash
disable_selinux(){
sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
echo "SElinux已禁用。"
exit
}
enable_selinux(){
sed -i.bak 's/SELINUX=disabled/SELINUX=enforcing/' /etc/selinux/config
echo "SElinux已啟用,重啟后生效。"
exit
}
PS3="請選擇相應(yīng)的編號(1-3):"
MENU='
禁用SELinux
啟用SElinux
退出
'
select M in $MENU ;do
case $REPLY in
1)
disable_selinux
;;
2)
enable_selinux
;;
3)
echo 您已退出
break
;;
*)
echo 請輸入正確的選項
;;
esac
done
二、統(tǒng)計/etc/fstab文件中每個文件系統(tǒng)類型出現(xiàn)的次數(shù)。
[root@centos8 ~]# awk '/^UUID/{fstab[$3]++}END{for(i in fstab) {print i,fstab[i]}}' /etc/fstab
swap 1
ext4 1
xfs 2
三、提取出字符串Yd$C@M05MB%9&Bdh7dq+YVixp3vpw中的所有數(shù)字
[root@centos8 ~]#echo "Yd$C@M05MB%9&Bdh7dq+YVixp3vpw" | awk '{gsub(/[^0-9]/,"",$0);print $0}'
05973
四、解決DOS***生產(chǎn)案例:根據(jù)web日志或者或者網(wǎng)絡(luò)連接數(shù),監(jiān)控當(dāng)某個IP 并發(fā)連接數(shù)或者短時內(nèi)PV達(dá)到100,即調(diào)用防火墻命令封掉對應(yīng)的IP,監(jiān)控頻 率每隔5分鐘。防火墻命令為:iptables -A INPUT -s IP -j REJECT
1、編寫腳本。
#!/bin/bash
LINK=100
ss -nt | awk -F"[[:space:]]+|:" '/^ESTAB/{print $(NF-2)}'|sort |uniq - c|while read count ip;do
if [ $count -gt $LINK ];then
iptables -A INPUT -s $ip -j REJECT
fi
done
2、添加執(zhí)行權(quán)限并計入計劃任務(wù)。
[root@centos8 ~]#chmod +x ddos.sh
[root@centos8 ~]#crontab -e
[root@centos8 ~]#crontab -l
*/10 * * * * ? /root/ddos.sh
總結(jié)
以上是生活随笔為你收集整理的linux awk 教程,linux awk使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为 nova 10 SE 开启鸿蒙 H
- 下一篇: 苹果更新 Apple TV 支持文档,此