LinuxÒÁµéÔ°ÂÛ̳'s Archiver

linux120 ·¢±íÓÚ 2007-10-11 11:46

Ò»¶Î²»¹æÔòÎı¾µÄ½ØÈ¡

ÎÒÓÐÒ»¸öÈÕÖ¾Îļþ,ÈçÏÂ:
[code]   10/11/2007 09:22:03 FX_FILESENT       2 file(s) sent to Destination
                                dm_reportD (Session ID = 1)

   10/11/2007 09:22:19 FX_FILESENT       2 file(s) sent to Destination
                                dm_reportD (Session ID = 1)

   10/11/2007 09:22:34 FX_FILESENT       2 file(s) sent to Destination
                                dm_reportD (Session ID = 1)

** 10/11/2007 09:22:46 FM_STAGFILE       Found 1 stagnant primary billing
                                file(s): Destination 'SXC2BP', oldest stagnant
                                file polled at 'Mon Oct 01 14:53:36 2007'.

** 10/11/2007 09:22:47 FM_STAGFILE       Found 22505 stagnant primary billing
                                file(s): Destination 'dm_reportD', oldest
                                stagnant file polled at 'Mon Oct 08 08:19:09
                                2007'.

   10/11/2007 09:22:50 FX_FILESENT       2 file(s) sent to Destination
                                dm_reportD (Session ID = 1)[/code]
ÎÒÐèÒª½«ÒÔ**¿ªÊ¼µÄÄDz¿·ÖÄÚÈÝÈ¡³öÀ´,×÷ÏÂÒ»²½µÄ´¦Àí,´ó¼ÒÓÐʲôºÃµÄ°ì·¨Ã´?

linux120 ·¢±íÓÚ 2007-10-11 11:49

ÆäʵÎÒÏÖÔÚÓÐʵÏÖ,Ö»ÊǾõµÃЧÂʲ»¸ß,˼·ÈçÏÂ:
ÏÈÕÒ³ö**¿ªÊ¼µÄÄDz¿·ÖÐкÅ,È»ºóÓÃawkÒ»´ÎÍùÏÂȡһÐÐ,È¡µ½Îª¿ÕÐеÄʱºò,¾Í½áÊøÕâÒ»²¿·ÖµÄ¶ÁÈ¡.
[code]grep -n "^\*\\*" ${tmpLog} |awk -F\: '{print $1 }' >${tmpNum}

cat ${tmpNum} |while read num
do
    i=${num}
    Line=Null

    while [ "${Line}" != "" ]
    do
          Line=`awk 'NR=="'$i'"'  ${tmpLog} `
         #Debug
         #echo "Line=[$Line] and i = [$i]"
          echo "${Line}" >> ${sendFile}

          i=`expr $i + 1 `
          if [ $? -ne 0 ];then
               echo "ÐòºÅ¼ÆÊýÆ÷ʧ°Ü,Çë¼ì²é!!" >>${sendFile}
          fi
   done

done[/code]

´ó¼Ò°ïæÏëÏëÓÐûÓиüºÃµÄ°ì·¨,×îºÃÄÜÓÃawk ,»òsedÒ»ÐÐÃüÁîÆ¥Åä³öÀ´.

[[i] ±¾Ìû×îºóÓÉ linux120 ÓÚ 2007-10-11 11:51 ±à¼­ [/i]]

dearvoid ·¢±íÓÚ 2007-10-11 12:16

Ö»Óà awk ¾Í¹»ÁË:
[quote][font=Courier][color=black][/color][color=blue]-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=1282 $?=0][/color] [color=red]; cat file
[/color][color=black]   1
** 2
** 3
   4
[/color][color=blue]-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=1282 $?=0][/color] [color=red]; awk '/^\*\*/' file | while read line; do echo "$line"; done
[/color][color=black]** 2
** 3
[/color][color=blue]-(dearvoid@LinuxEden:Forum)-(~/tmp)-
[$$=1282 $?=0][/color] [color=red]; bye
[/color][color=black][/color][/font][/quote]

linux120 ·¢±íÓÚ 2007-10-11 12:29

ºÇºÇ,µ«ÊÇ**ÏÂÃæ»¹ÓÐÒ»²¿·ÖµÄ,Ëü²»ÊÇÒ»ÐÐ,ÊDz»È·¶¨µÄ¼¸ÐÐ×é³ÉµÄ,ÒÔ¿ÕÐÐ×÷½áÊø·û,ÎÒÒª»ñÈ¡Õû¶Î

TUDOU01 ·¢±íÓÚ 2007-10-11 15:17

ÓÃawk±àдµÄ£º
/[0-9][0-9]\/[0-9][0-9]\/200[0-9]/{if(/^\*/)
                                     {PD=1
                                      print$0;}
                                   else
                                     PD=0
                                  }
!/[0-9][0-9]\/[0-9][0-9]\/200[0-9]/{if(PD==1) print $0}

040410615 ·¢±íÓÚ 2007-10-11 15:31

[root@localhost shell]# sed -n "/^\*\*/,/^$/p"  ./diay
** 10/11/2007 09:22:46 FM_STAGFILE       Found 1 stagnant primary billing
                                file(s): Destination 'SXC2BP', oldest stagnant
                                file polled at 'Mon Oct 01 14:53:36 2007'.

** 10/11/2007 09:22:47 FM_STAGFILE       Found 22505 stagnant primary billing
                                file(s): Destination 'dm_reportD', oldest
                                stagnant file polled at 'Mon Oct 08 08:19:09
                                2007'.
Ò»Ìõsed¾Í¿ÉÒÔ½â¾öÁ˰¡

linux120 ·¢±íÓÚ 2007-10-11 15:42

:victory:
ºÃ,²»´í,Õâ¾ÍÊÇÎÒÏëÒªµÄ½á¹û,¹þ¹þ

linux120 ·¢±íÓÚ 2007-10-11 15:45

sedºÍawk̫ǿ´óÁË,²»¹ýÓÐʱºòÓõIJ»ÊìÁ·,¿ÉÒÔͨ¹ýÆäËüµÄ·½Ê½À´µ÷ÕûÒ»ÏÂ,ÌõÌõ´ó·ͨÂÞÂíÀ²....:lol

TUDOU01 ·¢±íÓÚ 2007-10-11 16:27

ºÃ´ÏÃ÷µÄ·½·¨£¡ok!

linux120 ·¢±íÓÚ 2007-10-11 16:42

ÆäʵoracleµÄÈÕÖ¾Àï,ÓкܶàÕâÖÖ²»¹æÔòµÄÐÅÏ¢,ÓÃsed´¦ÀíÒ»ÏÂ,¸æ¾¯¾ÍºÜ·½±ãÁË

li-jiahuan ·¢±íÓÚ 2007-10-12 13:37

[code]
perl -00 -ne ' print if /^\Q**/  '   your_file
[/code]

µÈdearvoid³öawk°æ:lol

li-jiahuan ·¢±íÓÚ 2007-10-12 21:13

[quote]Ô­ÌûÓÉ [i]040410615[/i] ÓÚ 2007-10-11 15:31 ·¢±í [url=http://linuxeden.com/forum/redirect.php?goto=findpost&pid=588998&ptid=159625][img]http://linuxeden.com/forum/images/common/back.gif[/img][/url]
[root@localhost shell]# sed -n "/^\*\*/,/^$/p"  ./diay
** 10/11/2007 09:22:46 FM_STAGFILE       Found 1 stagnant primary billing
                                file(s): Destination 'SXC2BP', o ... [/quote]

sed µÄ̰À·Æ¥Åä
ÈÃÕâÌõ¼Ç¼ÕýºÃ¿ÉÒÔ¡®ÕýÈ·¡¯ÏÔʾ¡£¡£¡£

Èç¹ûÄÇÁ½¶Î´øÐǵļǼ²»ÊÇÕýºÃ°¤ÔÚÒ»Æð
¹À¼Æ»áÓÐÎÊÌ⣺£©

err7dd ·¢±íÓÚ 2007-11-14 22:01

awk '/\*\*/,/^$/ {print}'  ./file
ÕâÑùÒ²¿ÉÒÔ°É

ArchieYao ·¢±íÓÚ 2007-12-9 15:37

ÎÒÒ²À´Ò»¸ö,¸Õѧawk,»¶Ó­ÅÄש:loveliness:
awk '{RS="\n\n"}/^\*\*/{print}' logfile #˼·:ÒÔÁ½¸öÁ¬ÐøµÄ»»Ðзû×÷ΪawkµÄRS (¼Ç¼·Ö¸ô·û)

Ò³: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.