2009-07-30 50 views
1

在一个包含大量文件和项目的解决方案中 - 您将如何查找所有完整注释的文件?我假定每行代码都以//(编辑:或为空)开头。查找完整注释文件

我使用VS 2008,C#,ReSharper可用。
我知道,通常这些文件不应该存在 - 这就是安全的来源是...

+0

在您的项目中,不会有代码块被注释掉:/ * * /? – JeffH 2009-07-30 15:14:51

+0

有,但通常每个人都使用ctrl + a,注释块 - 这将导致// ... – tanascius 2009-07-30 15:25:14

回答

3

要查找与当前目录下的所有行以“//”所有文件:

 
find . -type f -exec sh -c 'grep -vq "^//" {} || echo {}' \; 

注意,这会报告空文件。

grep的参数可以很容易地扩展到占空白,或泛化为匹配任意正则表达式。

0

好了,你可以写一个程序(可能是一个控制台应用程序),以递归走目录和文件树。阅读所有的.cs文件并检查每一行,看它的第一个非空格和非制表符是“//”。如果你想变得很花哨,你可以用“//”来计算总行数和行数,并显示百分比,这样你就可以捕获那些没有绝对每行注释的文件。你只需要了解一些关于System.IO的知识来获取文件和字符串函数来查找你正在寻找的字符。这应该包括它。

+0

我希望不用编码自己就能脱身:/ – tanascius 2009-07-30 15:29:21

0

这应该是接近你要找的东西:http://www.codeproject.com/KB/cs/csharplinecounter.aspx

寻找在决定是否行注释或不是项目的方法,你可以用它来建立一个计数等。

+0

不错的想法,我试了一下,但现在停下来..代码非常糟糕,不知何故它没有正确计数 - 它找不到我准备的注释文件。稍后我会再试一次。 – tanascius 2009-07-30 15:47:01

1

没有办法用你刚才提到的组件实现这种简单的搜索风格。这样做需要对文件进行一些解释,但可以用相当简单的脚本来完成。

这听起来像你正在寻找文件没有代码,虽然与所有评论的文件。例如,如果有1000行,其中900个评论,100个是空白的,它似乎符合您的标准。如果块它总是假

脚本应该是相当直截了当地写,但你需要留意以下怪异的情况下

  • 块注释
  • 。例如#如果0

  • 空行
+0

你说得对,我也必须照顾空白线条。我希望得到一个简单的解决方案,如查找对话框:/但有没有像它看起来... – tanascius 2009-07-30 16:55:59