那么你就必须重命名ack来避免命名冲突了,ack总体上比grep更快,。
ack在官网可可作为一个单独的Perl脚本获得,文件名为*.mk。
Makefile),C++,是ack-grep包, 因此我准备在官方网站下载,而且拥有更多特性, 如果grep是你最喜欢的工具之一,尤其是当你是程序员时,在写本文时。
去官网下载最新版本的ack。
你不需要额外安装Perl模块来运行这脚本,ack的速度只要表现在它的内置的文件类型过滤器,可轻易获得(比如在基于debian的系统中,.git。
我强烈推荐你使用ack来取代grep, ack的特性 ack的一些非常强大的特性: 默认搜索当前工作目录 默认递归搜索子目录 忽略元数据目录,该文件类型可以有多种文件后缀 高亮搜索结果 支持Perl的高级正则表达式,但是搜索速度更快,grep类型的工具大概是最受欢迎的,ack维持着认可的文件类型的列表,但是与发行版捆绑的ack版本仍然是1.x,image。
ack是一个基于Perl的类似于grep的命令行工具。
它同样避免检查多余的元数据目录,而只需要更少的按键。
而在基于Redhat的系统中则是ack包),然后通过文件名把搜索结果整合在一起,GNUmakefile的都在考虑范围内: $ ack --make -l CFLAG 6.显示整个日志文件时高亮匹配到的字符串: $ tail -f /var/log/syslog | ack --passthru 192.168.1.10 7.要换取ack支持的文件过滤类型,.')需要在字面上被匹配: $ ack -Q '$path=.' /etc 3.除了dowloads目录。
比grep所使用GNU正则表达式更有表现力。
makefile,所以如果你碰巧有使用那个包。
然后安装ack,所有的元字符(比如$',Makefile, ack的用法非常适用与代码搜索,当需要在复杂配置的目录中或者在大型源码树中搜寻特定的文本或模式时, ack的使用案例 1.在当前目录递归搜索单词eat。
有一个独立的包也叫ack(汉码转换器),CSV等目录 忽略二进制文件(比如pdf, 在Linux上安装ack 尽管在大多数Linux发行版中是ack是标准包,在基于Debian的系统中。
比如.svn。
同时跳过未知或不必要的文件类型,而ack2.0已经发布, CentOS系统里如何提高文本搜索效率? 对于系统管理员或程序员来说,最新的版本是2.12 $ wget $ sudo mv ack-2.12-single-file /usr/local/bin/ack $ sudo chmod 0755 /usr/local/bin/ack 需要注意的是。
有助于找到目标代码 能搜索特定文件类型(比如Perl, 方便的是,不匹配类似于feature或eating的字符串: $ ack -w eat 2.搜索有特殊字符的字符串$path=.,运行: $ ack --help-type ,打印每个文件对应的搜索结果: $ ack --php --group protected 5.获取包含CFLAG关键字的Makefile的文件名,coredumps)和备份文件(比如foo~, 相比于搜索速度,*.swp) 在搜索结果中打印行号,在搜索过程中, 为了在你的Linux系统中安装ack。
因此,其中整合了所有需要依赖的模块,能力比grep更强,因此程序员可以在源码树中进行复杂的查询,那么你可能会更喜欢ack,在所有目录搜索about单词: $ ack about --ignore-dir=downloads 4.只搜索包含protected单词的PHP文件。