ack是一个perl脚本,是grep的一个可选替换。
有以下优势:
- 为程序员设计,使用方便,输入较少
- 默认递归搜索
- 缺省提供多种文件类型供选,文件类型对应的后缀名可修改
- 使用perl的正则表达式,而grep只支持其一个子集
- 搜索结果高亮输出
很多人以讹传讹,使人容易对ack的搜索速度产生误解。ack的官方宣传中说比grep快,其前提是ack可方便地针对部分后缀的文件进行搜索,而grep默认对所有文件搜索。ack的官方文档中明确指出,在对大量文件进行搜索时,grep的速度还是最快的。
~/.ackrc
使用此配置文件存储ack的常用选项。
-i --type-add php=.lib
如上所示,该文件中每一行应该是ack命令行参数中用空格分隔的一个部分。
例子
如果搜索的关键词是正则表达式,在Linux下必须将其用双引号包围起来。
如:
```bash ack "gbldb\s*=" ```Windows下的安装
- 安装strawberryperl
- 保存ack.pl到C:\bin ```dos @echo off perl.exe c:/bin/ack.pl %* ```
- 将C:\bin加入环境变量%PATH%
资源
- ack.vim: Vim使用ack的辅助扩展
Posted via UltraBlog.vim.