在 shell 中仅从开始到结束对日志进行 grep



我想在 shell 中从开始到结束 grep 日志

我正在使用这个脚本,但只能达到时间,因为有一个空格?

cat cdrdump_test.log |
while read line
    do
       sed -n 's/.*CDRQ]:([^ ]*).*/1/p;d' >>new_cdrdump_test.log
    done
echo "done"

.LOG::

2017-02-13 08:16:14,808 [20170213081614665-88] INFO nxl.vxml.manager.VxmlSessionManager ( 807( - [TRX-20170213081614665-88][呼叫流] [CDRQ]:开始|开始|>>动作=TM2CM.警报,系统标识符=192.168.100.10,会话 ID =20170213081614665-88,MSISDN=773930863,通道=24,DNIS=851851255777759523,类型=IBD,CID=-1,中继=2,VXML=空,板=1,域=GSM,促销=默认,DIAL_TIME=空,选项={},时间=13-02-2017 08:16:14.0666|STARTTIME=1486984574666|<>ACTION=TM2CM.已连接,系统标识符=192.168.100.10,SESSIONID=20170213081614665-88,时间=13-02-2017 08:16:14.0760|<>操作=CM2CM。日志,系统标识符=192.168.100.10,SESSIONID=20170213081614665-88,消息=CRBT_STATUS:NoRecord,TIME=13-02-2017 08:16:14.0806|<</blockquote>

echo "started "猫cdrdump_test.log|而读取行 做 sed -n 's/.CDRQ]:((。/\1/p;d'>>删除END.log 做回声"开始1"猫删除END.log|而读取行 做 sed s/'\w$'//>>Final_test.log 做回声"结束">

最新更新