oracle监听日志截取流程

来源:这里教程网 时间:2026-03-03 19:07:58 作者:

案例1完整:

fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' | awk -F: '{ print $1 }' | sort |  uniq -c 1. fgrep "09-MAY-2022" listener.logabc 截取涵盖时间"09-MAY-2022"的部分 2. fgrep "09-MAY-2022" listener.logabc |fgrep "establish" 截取同时满足时间"09-MAY-2022"和带有"establish" 3. fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' 满足上面条件后截取 第一列+空格+第二列 4. fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' | awk -F: '{ print $1 }' 满足上面条件后,截取':'为分界的第一列 fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' | awk -F: '{ print $1":"$2}' 分割1,2列中间加个":" 5. fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' | awk -F: '{ print $1 }' | sort 排序 6. fgrep "09-MAY-2022" listener.logabc |fgrep "establish" | awk '{ print $1" " $2 }' | awk -F: '{ print $1 }' | sort | uniq -c 记录数量

案例2完整

cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/). *HOST=/ /g;s/).*$//g' | awk '{print $3}' | sort -rn | uniq -c | sort -k 1 1. cat listener.logabc 2.注意: 筛选的时间必须是真实日志里存在的。正常是前面小,后面大,下图相反是因为人为修改了时间。如果 cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' 3. cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST= / /g;s/).*$//g' sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' 拆解(s代表替换,g表示直接替换,g换个3就是重复的第三个//中的值替换。sed 's/abc/ /3;'     意思: 第三个abc替换成空格。代表所有的*前面需要加.也就是.*          \*只代表*这个字符。如果sed有多个,可以用;隔开。 $代表最后) sed s/\*.*HOST=/ /g; 翻译 *字符到HOST=中间替换成空格 cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g' s/).*HOST=/ /g; 翻译 )到HOST=中间替换成空格 cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g' s/).*$//g 翻译 )到最后($)中间替换成空值 cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' 4. cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' | awk '{print $3}' 输出第三列 5.排序 cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' | awk '{print $3}' | sort -rn sort -rn代表数字颠倒排序 6. cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' | awk '{print $3}' | sort -rn | uniq -c uniq -c记录数量 7. cat listener.logabc  |sed -n '/09-MAY-2022 05:24:35/,/09-MAY-2022 04:07:17/p' | sed 's/\*.*HOST=/ /g;s/).*HOST=/ /g;s/).*$//g' | awk '{print $3}' | sort -rn | uniq -c | sort -k 1 sort -k 1表示第一列排序

相关推荐