
awk、sed、grep文本处理
文章平均质量分 76
记录shell的awk、sed、grep三剑客知识点
Nightwish5
Can you share , share you can
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
awk、sed、grep文本处理(十五)
一、使用awk,筛选出大于3ms的内容。2022:04:25 00:00:12 Probing 192.168.1.100:1081/tcp - Port is open - time=5.456ms2022:04:25 00:00:13 Probing 192.168.1.100:1081/tcp - Port is open - time=2.339ms2022:04:25 00:00:15 Probing 192.168.1.100:1081/tcp - Port is open - time=原创 2022-04-25 13:20:54 · 2790 阅读 · 0 评论 -
awk、sed、grep文本处理(十四)
一、sed 删除指定范围的文本内容111111:aaaaa222222:bbbbberror33333:ccccc44444:ddddderror55555:eeeeerrrrr:oooo#按照以前学的 /error/,/3333/d;q是没用的。 要使用sed的标签功能和模式空间。 作者:马龙帅#这个用awk做的话,逻辑会更清晰,从error开始读取,并不断追加到变量中,遇到3333就清空变量,遇到最后一行,就输出,虽然sed命令的逻辑也是sed '/error/{:x;N原创 2021-08-18 17:14:13 · 1466 阅读 · 0 评论 -
awk、sed、grep文本处理(十三)
一、怎么取文件内 ,一个关键字后的所有行sed -n '/keyword/,$p'awk '/keyword/{p=1}p'sed '/keyword/,$!d'awk '/keyword/,0'原创 2021-05-13 14:22:19 · 293 阅读 · 0 评论 -
awk、sed、grep文本处理(十 二)
一、一段文本保留前三行是表头,想保留从第四行开始匹配compute, 匹配了打印。awk 'NR==1,NR==3;/compute/{print $0}' 1.txtawk 'NR<4||/compute/{print $0}' 1.txtawk 'NR<4;/compute/{print $0}' 1.txt原创 2021-02-16 21:09:14 · 327 阅读 · 0 评论 -
awk、sed、grep文本处理(十 一)
1、需求, ps -ef | grep tomcat | grep -v grep | wc -l 的结果 更换k8s-master文件中的 linux{name=“tomcat”}旁边的 6#应用指标 linux applinux{name="tomcat"} 910999999linux{name="nginx"} 3#linux Server metricslinux{name="内存"} 44linux{name="磁盘"}65linux{name="网络"} 16原创 2021-01-11 15:48:51 · 297 阅读 · 0 评论 -
awk、sed、grep文本处理(十)
一、第一行删掉最后一个字母 第二行删掉倒数第二个字符第n行就删掉倒数第n个字母,有什么方法可实现?ABCDEFGABCDEFGABCDEFGABCDEFGABCDEFGawk解题:awk 'BEGIN{FS=OFS=""}{if(NF>=NR)$(NF-NR+1)="";print}' txt分析:...原创 2020-12-08 09:32:05 · 211 阅读 · 0 评论 -
awk、sed、grep文本处理(九)
1、获取结果要30000~40000之间的数字netstat -ntlp|grep -Po '(?<=:)[34]\d{4}'|sort -n2、grep 递归循环截取想要的数据文本内容:{'doc_type':'hw_tencent_malware', 'doc_msg': u'Feb 11 21:12:22 10.3.2.124 tencent_info: {"status": "finished", "final_result": "1" ,"upload_time": "2020原创 2020-11-02 15:15:22 · 265 阅读 · 0 评论 -
shell创建文本,重命名文件,批量转换编码格式,重定向到markdown
1、要创建的文本内容:b.txt.bakcat /root/shellDir/program/sedTest/testFile/b.txt.bakLinux系统发送告警脚本【www.vipsrc.com】.shMySQL数据库备份多循环【www.vipsrc.com】.shnginx 访问访问日志按天切割【www.vipsrc.com】.sh2、根据文本内容创建对应的文件:touchFile.sh.bakcat touchFile.sh.bak#!/bin/bashcurrPathF原创 2020-10-28 15:32:36 · 1034 阅读 · 0 评论 -
awk、sed、grep文本处理(八)
一 、把/etc/profile文件下的 export JAVA_HOME 这个开头的 这一句 提到 catalina.sh 的#!/bin/sh 下一行下面大佬解答: (学到了数组)下图的方式,这样会有问题,插入的时候因为空格问题,后面部分会提示错误,用数组就可以解决空格问题变成这样了,export后面的就没有了。 所以用数组写法:java_path=(`grep -E "^export JAVA_HOME.*" /etc/profile`)echo $...原创 2020-09-18 23:39:40 · 418 阅读 · 0 评论 -
awk、sed、grep文本处理(七)
1、awk题 输出第二列重复的所有整行awk题:如下文本内容1 zhangsan2 lisi3 zhangsan4 lisii5 a6 b7 c8 d9 a10 b要求:输出第二列重复的所有整行,即输出结果:1 zhangsan3 zhangsan5 a9 a6 b10 bawk '{a[$2]++;if(a[$2]==1){b[$2]=$0};if(a[$2]==2){print b[$2]"\n"$0}}' aaa如果有重复2行以上的:awk '{a原创 2020-08-29 21:49:34 · 328 阅读 · 0 评论 -
awk、sed、grep文本处理(六)
1、截取list中的xxxxx.jpg下面是数据,只有1行['data/zxcv/hello/20te11st/77/144149lho1h9m2g13ja2ot.jpg','data/zxcv/hello/20te11st/77/144156wbylbasy0hnsbvbc.jpg','data/zxcv/hello/20te11st/77/144156v868o0981wesl8eo.jpg','data/zxcv/hello/20te11st/77/144156ih2yrqjdrhhjtwf原创 2020-08-23 13:45:52 · 855 阅读 · 0 评论 -
awk、sed、grep文本处理(五)
1、过滤出"request_time 大于3的一整行日志。{ "@time": "13/Aug/2020:19:18:52 +0800", "@fields": { "remote_addr": "10.0.0.1", "remote_user": "-", "body_bytes_sent": "10", "status": "200", "request": "GET / HTTP/1.1", "request_method": "GET", "http_referer": "-", "http_原创 2020-08-14 14:38:19 · 367 阅读 · 0 评论 -
awk、sed、grep文本处理(四)
1、备份一个数据库,除了其中一个表不备份,其他都备份#!/bin/bashdb_passwd="a123456"ds_tables="$(mysql -uroot -p$db_passwd ds_shop -Bse 'show tables' | tail -n 6 | grep -v "ds_wxconfig")"original_tables="$(mysql -uroot -p$db_passwd ds_shop -Bse 'show tables' | tail -n 6 )"...原创 2020-07-29 15:53:45 · 606 阅读 · 0 评论 -
awk、sed、grep文本处理(三)
1、 取Excel里面的域名文档:1-10000.xls (数据在这:)链接:http://note.youdao.com/noteshare?id=343a1faff48a3ce98239eb16478b0635&sub=B034F18DC7294A38B8478B93DA791AFCgrep -E "((inv-)?(new-)?([a-z0-9A-Z_]+\.){2,4}[a-z0-9A-Z_]+)" dns.txtgrep -oE "((inv-)?(new-)?([..原创 2020-07-27 10:40:26 · 204 阅读 · 0 评论 -
awk、sed、grep文本处理(二)
1、将hello翻转过来,不用系统自带的命令方法1:echo hello | sed -r 's#(.)(.)(.)(.)(.)#\5\4\3\2\1#'方法2:echo hello |awk '{split($0,var,"")}END{for(i=length(var);i>=0;i--)printf i==0?var[i]"\n":var[i]}'(如果用ubuntu报错awk: line 1: illegal reference to array var ,则使用sudo原创 2020-07-18 12:03:34 · 443 阅读 · 0 评论 -
awk、sed、grep文本处理 (一)
本文会记录一下一些用过的shell操作1、显示env内指定开头关键字的内容(home、shell、pasth等)env | egrep -i '^home|^shell|^path|^logname|^user'2、找出ip addr中的IP ip addr | grep -E "(([0-9]+\.){3})[0-9]+"或者就用hostname -I正则匹配,匹配任意数字且后面带.号 执行三次,后面那个执行一次匹配任意数字 (+ 号代表前面的字符必须至少出现...原创 2020-07-14 15:38:40 · 413 阅读 · 0 评论 -
截取netstat信息的服务和端口信息
截取netstat信息的服务和端口信息。 群里大佬提供:netstat -tnpl|awk 'NF==7{sub(/.*:/,"",$4);sub(/[0-9]*\//,"",$NF);print $4,$NF}'netstat -tnpl|awk '/^tcp/{sub(/.*:/,"",$4);sub(/[0-9]*\//,"",$7);print $4,$7}'netstat -tnpl|awk '/^tcp/{sub(/.*:/,"",$4);sub(/[0-9]*\//,"",$7)原创 2020-07-10 17:05:00 · 542 阅读 · 0 评论 -
linux 在查找删除后,echo显示删了哪些东西
群里小问:linux 在查找删除后,echo显示删了哪些东西最初删除语句 find/bak/ss3000cms_bak-name"*.sql.gz"-typef-mtime+3-execrm-r{}\;大佬:此时运用到:bash-c"echo{};rm{}"原创 2020-07-09 11:28:56 · 275 阅读 · 0 评论 -
使用grep 、sed精确匹配遇到的事
(又一次群里问题讨论)文本内容:flow-export]: 1233000,flow-export-ex]: 4350,flow-export123-4ex]: 4350,haflow-exportNdsa4ex]: 4350,flow-export!grep 代码:cat test.txt | grep -w flow-exportsed 代码:sed 's/\bflow-export\b/TEST/g' test.txt最初的疑问是为什么第二行也会匹原创 2020-07-06 15:13:20 · 1033 阅读 · 0 评论 -
记一次awk 、sed、egrep截取处理文本字段的经历
群里面有个老哥,提出了个需求:筛选name=“中间的内容”<project name="airliner/vendor/ts/prebuilt/Iap/Iapprotocol" path="lagvm/LINUX/android/vendor/ts/prebuilt/Iap/Iapprotocol" remote="prebuilt" revision="728e84ef2864978add6e323f3179fd5154c5d820" upstream="26.26.X.verify"/&原创 2020-06-28 16:56:32 · 506 阅读 · 0 评论