ack是一个很棒的搜索工具,特别是如果您要查找的所有内容都位于顶层项目目录下的嵌套目录中。
我想搜索一些不同的目录树,以便搜索我的整个项目。
我可以做这样的事情(我要包含5到6个目录):
ack sometext . ../../Libraries/CMSIS/Device/ST/STM32F4xx/ ../../Libraries/CMSIS/
我也尝试过makefile,在那里我让ack成为虚假的目标,在Makefile知道的目录上调用ack。这是有效的,但调用它的语法是不幸的:
gmake ack SVAL=sometext
Makefile中的位置:
ack:
$(ACK) $(SVAL) $(LIB_DIRS) $(DEVICE_DIRS) $(OTHER_PROJECT_DIRS)
理想情况下,我可以在.ackrc中嵌入一些内容来定义ack搜索的目录。有没有人喜欢用ack来搜索复杂的项目目录结构?
答案 0 :(得分:2)
因为ack可以做我想要的,使用复杂的命令行。我对日期的最佳答案是将其嵌入到bash脚本中,所以我输入:
./pack foobar
在我的整个项目中搜索foobar。
脚本包看起来像这样:
#!/bin/bash
CONTEXT=-C1
c:/bin/ack $CONTEXT $* . ../../Libraries/CMSIS/Device/ST/STM32F4xx/ \
../../Libraries/CMSIS/
仍然更喜欢.ackrc解决方案。
答案 1 :(得分:0)
Sack:grep,ack和/或ag(银色搜索者)的包装 http://sampsonchen.com/sack/
可以使用预设配置文件切换“搜索环境”,设置CL标志和预设目标(MULTIPLE)顶级起点导演