2011-12-02 53 views
0

如何查找而不是if检查的调试语句的数量的计数?Unix命令查找源代码中调试语句的数量

这是有一个,如果检查调试语句的例子:

if(log.isDebug()){ 
    log.debug("This is a debug statement"); 
} 

这是没有,如果检查的单机调试语句的例子:

log.debug("This is a debug statement"); 

例如,找到调试语句的数量,我会使用这个命令:

grep -ir "debug" * | wc -l 
+0

如果您使用GNU grep(在大多数Linux上本机可用),您可以查看'-A'和'-B'选项。 – rahmu

回答

0
grep -ir "debug" * | grep -v "if" | wc -l 
2

这是一个简单的awk程序,试图在你的警卫之外寻找调试语句。根据需要调整它进行计数。

/if.*log.isDebug/ { 
    inif=1 
} 

/}/ { 
    inif=0 
} 
/log.debug/ { 
    if (!inif) print 
} 
+0

我如何将它放入脚本? –

+1

@ChinBoon,将其保存为'debug.awk'并在您的文件上运行'awk -f debug.awk'。 – lhf

+0

它似乎不工作:( –