該指令碼的應用場景是資料分析,一般作線上日誌分析的人員需要觀察線上資料的變化,如:
1.訪問資料庫的響應大於1000毫秒的sql
2.apache cookielog響應大於多少毫秒的資料
資料格式:
2010-12-14 00:01:26,427 fatal function_time - wmmad.alloffer.get 15511ms
2010-12-14 00:01:33,164 fatal function_time - wmmad.alloffer.get 14213ms
2010-12-14 00:02:31,021 fatal function_time - wmmad.alloffer.get 14126ms
2010-12-14 00:05:08,160 fatal function_time - wmmad.alloffer.get 15295ms
2010-12-14 00:24:00,372 error function_time - wmmad.offer.repost 406ms
指令碼:
#/bin/bash
# author: madding.lip
# date 2010.12.14
# 統計超n毫秒的資料量
error_usage=1
if [ $# != 2 ]; then
echo "usage: $0 file times";
exit $error_usage
fimyfile=$1
mytime=$2
all=0
count=0;
data=`cat $myfile | awk '' | sed 's/ms//g'`;
for i in $data ;
do all=$(( $all + 1 ));
if test $(( $mytime < $i )) -eq 1 ;then
# echo $i; sleep 1;
count=$(( $count + 1 ));
fidone;
echo "response time over $ms: "$count" times"
echo "all count: "$all" times"
具體根據資料格式作調整即可。
printf輸出指定格式
參考部落格 printf格式輸出 flags width perc f n h l type 用到了flags中的 0 注意是零不是歐 其百科描述為 將輸出的前面補上0,直到佔滿指定列寬為止 不可以搭配使用 width 即表示需要輸出的位數。int a 4 printf 03d a 輸出 004 也...
輸出指定格式的日期。
程式分析 使用 datetime 模組。if name main pass code codec n input input the number n code.scoreofstudent n 輸出今日日期,格式為 dd mm yyyy。更多選項可以檢視 strftime 方法 print dat...
時間按指定格式轉換
推薦閱讀 一。把秒數轉換成 00 00 00 大於一天顯示 1天2時local function second2dhms second if second 0 then return0,0,0,0 end local d math.floor second 86400 second second d...