shell作业脚本
第一次作业
shell作业第一次.docx
可能用到的包
nginx.sh
nginx-1.6.0.tar.gz
第二次作业
mingdan.txt
作业7.2.docx
第三次作业
监控文件变化
md5final.sh
md5simplify.sh
md5.sh
自动分发公钥
sendpubkey(simplify).sh
sendpubkey.sh
sshpass-1.06.tar.gz
模拟seq序列
seq.sh
seq_sh.sh
字符串处理习题
例题源
截取字符串例题.txt
ifconfig中截取ip地址
方法1
cut
方法2
sed
方法3
awk
sed另外的方法
合并文件并排序
题目要求
方法一(最快捷方法)
方法二(awk数组)仅仅实现合并
检测内存使用占用率
格式化输出格式
默认格式化输出保留位数
格式化输出自定义保留小数位数
非格式化输出
极简版
格式输出
题目要求
班里的人才的清奇方法,起码我知道sort用法很骚"1.7"表示第一个字段第七个字符进行排序,tr错位排序也是牛逼
sed高级用法
sed内置替换
一般方法
awk排列法
普通方法
awk内置大小写替换函数toupper()和tolower()
查重脚本
题目要求
实现方式
相同合并
题目要求
普通方法
paste
xargs
sed用法
awk用法
awk字符串方法详解
需要有个大头作为角标,str[1.1.1.1] str[2.2.2.2]一开始没有定义,所以一开始为空,str[1.1.1.1]变化过程: 空、“ 11” “ 11 22”“ 11 22 33 ”·······
插入计算
题目要求
awk实现方式
统计排序
题目要求
普通实现方式
awk实现方式
提取域名
题目要求
解决方法
使用平时学过的
sed
awk
awk数组
awk就是角标为有形,赋值为无形的操作方式,赋值的过程中是边统计边赋值,是一个变量,动静结合,静为角标,动为所赋予的值
统计历史命令使用最多的前十个命令
一般方法
awk方法
本身是角标,值是array
统计题
答案
统计次数
过滤字符(正则)
随机数取大小
首先可以产生随机数的命令
shuf -i 1-100000 | head -5000 | tr "\n" ',' >a.txt 即可再a.txt中创建一个1-100000的随机数列
行判断方法
我的方法
监控ddos攻击
题目
概述
实验要求:开启firewalld
清空防火墙规则
查看防火墙
方法一:脚本实现方式
方法二:awk实现方式
我的修改:netstat -npt |awk '/^tcp/{split($5,tmp,":");array[tmp[1]]++} END{for(i in array){if(array[i]==2) {cmd="iptables -A INPUT -s "i" -j REJECT";system(cmd)}}}'
我的实现方式2(分隔符简化):
netstat -npt | awk -F '[ :]+' '/^tcp/{array[$6]++} END{for(i in array) {if(array[i]==2){cmd="iptables -A INPUT -s "i" -j REJECT";system(cmd)}}}'
实现成功标志
再次使用11登录,显示失败
发布者:LJH,转发请注明出处:https://www.ljh.cool/35311.html