2

我目前正在使用 Drupal,并且很难搜索各种 .module 文件的内容。例如,我想搜索类似“ div style="border: 1px solid red;”的内容并找出它所在的文件。

我所有的代码编辑器都会在他们的搜索中忽略 .module 文件,因为它是一个奇怪的扩展名。Windows 不会这样做,因为它位于联网位置。

有任何想法吗?

4

3 回答 3

6

ack可以很高兴地为您做到这一点。为了更方便,您还可以在.ackrc文件中添加以下内容:--type-set=drupal=.php,.inc,.module,.install,.info,.engine --type=drupal

所以打字

$ ack string

string在当前目录下的所有 drupal 文件中找到。

(是的,它在 Windows 上运行,请参阅链接)。

于 2009-06-04T14:12:52.640 回答
2

安装Cygwin,在您的 Drupal 站点目录中打开一个 shell,然后使用grep--- 命令行实用程序使用正则表达式搜索文件。

像这样的东西:

grep -r 'div style="border: 1px solid red;"' *

将递归地在每个文件中搜索该字符串。

或者:

find . -name '*.module' -exec grep -H 'div style="border: 1px solid red;"' {} \;

只会搜索.module文件。

于 2009-06-04T14:06:31.233 回答
1

我做什么:

使用 firebug,它会告诉您确切的文件,然后您可以浏览系统以找到该样式。您需要暂时关闭 CSS 缓存。

通常,在 .module 文件中定义的 CSS 规则不会太多(或不应该有)。

如果所有其他方法都失败了,您可以使用Agent Ransack之类的东西,或者,为了获得更多命令行 unixy 的感觉,命令行搜索之王:grep

于 2009-06-04T14:05:59.407 回答