我负责白标记的应用程序,以便它包含没有引用我们的公司、网站等。这问题我正在进入的是,我有许多不同的模式,以寻找和愿保证所有模式都被删除。由于应用程序不是内部开发的(全部)我们不能简单看看事件的消息。性能和可以完成。我们必须通过JSP、Java和xml。

我使用的查询到的过滤器的结果是这样的:

grep SOME_PATTERN . -ir | grep -v import | grep -v // | grep -v /* ...

该模式是逃出来的时候我利用他们在命令线路;然而,我不觉得这个模式匹配的非常强劲。有可能出现,有进口在他们(可能)或甚至/*(的开始,如果是的话,为什么不试评论)。

所有文本输出到屏幕上必须来自一串宣言》的某个地方或一个常量的文件。因此,我可以假设我会找到的东西,如:

public static final String SOME_CONSTANT = "SOME_PATTERN is currently unavailable";

我想找到这发生以及为:

public static final String SOME_CONSTANT = "
SOME_PATTERN blah blah blah";

或者,如果我们有一个内部履/自动测试,我可以简单地回拉xhtml从每一页和检查的来源,以确保它是干净的。

有帮助吗?

解决方案

我会使用 SED ,不是的grep ! SED是用来对输入的流进行基本的文本转换。 尝试s/regexp/replacement/选项与sed的命令。

您也可以尝试的 AWK 命令。它有一个选项的 -F 作为字段分离,可以用使用它; 以您的单独的行与文件的;

最好的解决方案将是在然而一个简单的脚本的的Perl 或在的的Python

其他提示

解决您的关切缺少一些事件,为什么不器逐步:

  1. 创建一个文本文件的所有可能的 匹配作为一个起点。
  2. 使用过滤器X(查询为'^进口', 例如)倾倒有可能假 正进入一个tmp文件。
  3. 使用过滤器X再除去那些 匹配的自己的工作文件(a 复制的[1]).
  4. 做一个快速通过的tmp 文件和增加任何真正的比赛回来 中。
  5. 重复[2]-[4]与其他过滤器。

这可能需要一些时间,当然,但它听起来不像这是你的东西想要得到错误的...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top