正则表达式
特殊字符
$ . ' * [ ] ^ | ( ) + ?
awk使用心得
将抽取域在屏幕上显示和保存到文件中 awk '{print $3}' t1.txt | tee file1.txt
抽取所有域 awk '{print $0}' t1.txt
抽取其中某些域 awk '{print $1, $3}' t1.txt
打印报告头 awk 'BEGIN{print "Name birthday ---------------------------"} {print $1" "$3}' t1.txt
打印报告头和报告尾 awk 'BEGIN{print "Name birthday ---------------------------"} {print $1" "$3} END{print "end-of-report"}' t1.txt
条件操作符
匹配 awk '{if($4~/mse/) print $0}' t1.txt
不匹配 awk '{if($4!~/mse/) print $0}' t1.txt
sed使用心得
使用p显示行 sed -n '2p' t2.txt
打印范围 sed -n '1,3p' t2.txt
使用模式进行查询 sed -n '/is/'p t2.txt
匹配元字符 sed -n '/$/'p t2.txt
显示整个文件 sed -n '1,$p' t2.txt //打印1到最后一行
正则表达式 sed -n '/.*ful/'p t2.txt
打印第一行 sed -n '1p' t2.txt
打印最后一行 sed -n '$p' t2.txt
常用使用举例:
(1)删除路径名第一个符号 echo $PWD | 's////g'
(2)追加/插入文本 echo "Mr Wang" | sed 's/Mr /& Kris/g' #结果Mr Kris Wang
(3)删除首字符 echo "abcdefg" | sed 's/^.//g'
(4)删除文件扩展名 echo "abc.doc" | sed 's/.doc//g'
(5)增加文件扩展名 echo "abc" | sed 's/$/.doc/g'
(5)替换字符 echo "adf%dfa" | sed 's/\%/kk/g'
合并和分割
常用命令举例
grep、cut、awk、sed举例:
tail -f qrs.log | grep "recv_qrl_req" | cut -d ":" -f 11
grep -Pe '20:0[1-3]:dd.*more_link=' x.log
grep -Pe "qid=d+" x.log -o | sed 's/^qid=//'
grep xx xx.log | awk '{print $3}' > 1.log
其他补充
Comments From Main.hushibo - 21 Feb 2013 - 18:00
while [ 1 -eq 1 ];do top -b -d 1 -n 1|awk '$12 ~ /^module-name/{print $0}';sleep 3; done
Comments From Main.hushibo - 21 Feb 2013 - 18:02
grep NOTICE log/module.log | awk '{print $3}'| uniq -c | tail # 看模块每秒处理了多少次。