- 论坛徽章:
- 0
|
本帖最后由 rushm 于 2012-03-01 18:10 编辑
我想匹配日志过去5分钟的内容出来
日志格式:- 2012-02-29 12:16:45,372 [INFO] - ( CM.java: 63) - Main Thread, Init clientSocketArray length=3200
- 2012-02-29 12:16:45,387 [INFO] - ( CM.java: 146) - Accept Thread, setRunning to: true
- 2012-02-29 12:16:45,389 [INFO] - ( CM.java: 208) - Working Thread[0] START
- 2012-02-29 12:16:45,389 [INFO] - ( CM.java: 208) - Working Thread[3] START
- 2012-02-29 12:16:45,389 [INFO] - ( CM.java: 208) - Working Thread[2] START
- 2012-02-29 12:16:45,389 [INFO] - ( CM.java: 208) - Working Thread[1] START
- 2012-02-29 12:16:45,391 [INFO] - ( CM.java: 208) - Working Thread[15] START
- 2012-02-29 12:16:45,391 [INFO] - ( CM.java: 208) - Working Thread[14] START
- 2012-02-29 12:16:45,391 [INFO] - ( CM.java: 208) - Working Thread[13] START
- 2012-02-29 12:16:45,391 [INFO] - ( CM.java: 208) - Working Thread[12] START
复制代码- 直接匹配的可以,可是放到脚本采用变量就不行,不知道是哪里需要转换
- $ awk -F, '($1 >"2012-03-01 18:04:32" ) && ($1 < "2012-03-01 18:05:32" ) {print $0}' /data/cm/logs/cm.log
- 2012-03-01 18:04:37,352 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:04:42,357 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:04:47,363 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:04:52,368 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:04:57,374 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:02,379 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:07,385 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:12,390 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:17,396 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:22,401 [DEBUG] - ( CM.java: 178) - Check running status
- 2012-03-01 18:05:27,407 [DEBUG] - ( CM.java: 178) - Check running status
复制代码- cat select_err.sh
- #!/bin/bash
- NOW_TIME=`date +"%Y-%m-%d %H:%M:%S"`
- echo $NOW_TIME
- DAY=`date +"%Y-%m-%d"`
- SYSTEM_NOW_TIME=`date -d "$NOW_TIME" +%s`
- SYSTEM_FIVE_M_AGO=`expr $SYSTEM_NOW_TIME - 300`
- FIVE_M_AGO=`date -d @"$SYSTEM_FIVE_M_AGO" +"%Y-%m-%d %H:%M:%S"`
- echo $FIVE_M_AGO
- cd /data/cm/logs
- awk -F, '($1 > '"$FIVE_M_AGO"' ) && ($1 < '"$NOW_TIME"' ) {print $0}' cm.log
复制代码 哪位gg帮我看看,thanks~~ |
|