awk add log for c++

    技术2022-05-20  27

    for f in `find  ../try1/mozilla-central/xpfe/appshell/src/ -type f |egrep -e '/.(h|cpp)'` ; do awk -f addlog $f  > $f.ok; mv $f.ok $f;done

     

     

    #! /usr/bin/awk

    BEGIN {    add = 0# addr = 0    line = 1 line1 = 0 line2 = 0 line3 = 0 line4 = 0 line5 = 0 line6 = 0}

    {#  print "line=",line#  print "add =",add  if (add)  {      print "#ifdef DEBUG"      print "    printf(/"enter %s(%d)-%s//n/",__FILE__,__LINE__,__FUNCTION__);"      print "#endif"      add = 0#   addr = 1   line1 = 0   line2 = 0   line3 = 0   line4 = 0   line5 = 0   line6 = 0#      print "after addlog add= ",add  }

      if ( line == line3+1 )  {        add = 0          line1 = 0          line2 = 0          line3 = 0          line4 = 0          line5 = 0          line6 = 0      }#  if (( index($0,"return") > 1 && index($0,"return") < 5 && addr == 1))#  {#   addr = 0#       print "#ifdef DEBUG"#    print "    printf(/"leave %s(%d)-%s//n/",__FILE__,__LINE__,__FUNCTION__);"# print "#endif"#  }

    #  if ( index($0,"}") == 1 && addr == 1)#  {#      addr = 0#        print "#ifdef DEBUG"#        print "    printf(/"leave %s(%d)-%s//n/",__FILE__,__LINE__,__FUNCTION__);"#        print "#endif" #  }

      print $0    if ( index($0,"::") > 0 )  {      line1 = line  }#  print "line1=",line1

      if ( index($0,"(") > 0 )  {      line2 = line  }#  print "line2=",line2

      if ( index($0,"{") == 1 )  {      line3 = line  }  if ( index($0,"}") > 1)  {      line4 = line  }  if ( match($0,"//") )  {      line1 = 0      line2 = 0      line3 = 0      line4 = 0      line5 = 0      line6 = 0  }  if (match($0,/class|enum|struct|static const|/[/] =/) )  {      line6 = line  }

      if ( index($0,"}") == 1 )  {      line1 = 0   line2 = 0   line3 = 0   line4 = 0   line5 = 0   line6 = 0  }

    #print "line3=",line3   if( (line2 >= line1 && line2 <= line1+5) && line1 > 0 )  {     if( line3 > line2)     {   if( line4 != line3 && line3 != line5 && line3 != line6+1 )   {             add = 1;   }     }  }  line++}

    END{    add = 0    exit 0;}

     


    最新回复(0)