0

ack 是一个很好的搜索工具,特别是如果你想找到的所有东西都在顶级项目目录下的嵌套目录中。

我想搜索许多不同的目录树,以便搜索我的整个项目。

我可以做这样的事情(我还要包括 5 或 6 个目录):

ack sometext . ../../Libraries/CMSIS/Device/ST/STM32F4xx/ ../../Libraries/CMSIS/

我也试过通过makefile来做,我会在其中制作一个虚假的目标,在Makefile知道的目录上调用ack。这行得通,但调用它的语法很不幸:

gmake ack SVAL=sometext

在 Makefile 中的位置:

ack:
    $(ACK) $(SVAL) $(LIB_DIRS) $(DEVICE_DIRS) $(OTHER_PROJECT_DIRS)

理想情况下,我可以在 .ackrc 中嵌入一些东西来定义 ack 搜索的目录。任何人都喜欢使用 ack 来搜索复杂的项目目录结构?

4

2 回答 2

2

由于 ack 可以使用复杂的命令行来做我想做的事。迄今为止我最好的答案是将它嵌入到 bash 脚本中,所以我会输入:

./pack foobar

在我的整个项目中搜索 foobar。

脚本包如下所示:

#!/bin/bash
CONTEXT=-C1
c:/bin/ack $CONTEXT $* . ../../Libraries/CMSIS/Device/ST/STM32F4xx/ \
../../Libraries/CMSIS/

仍然更喜欢 .ackrc 解决方案。

于 2013-10-25T18:28:21.273 回答
0

Sack:grep、ack 和/或 ag(银牌搜索器)的包装器 http://sampsonchen.com/sack/

可以使用预设配置文件切换您的“搜索环境”,设置 CL 标志和预设目标 (MULTIPLE) 顶级起点目录

于 2014-06-04T23:17:02.273 回答