ack一种grep的替代工具
大嘴牛今天要介绍的是程序员不可或缺的工具,一种类似于grep,但有过之而无不及的工具ack。
如果是在Fedora平台,那么只需要sudo yum install ack即可使用。使用的方法类似于grep,给定一个pattern,她就会自动在当前目录下去搜索,比如ack pattern。她相对于grep的好处在于:
- 速度很快,因为她只搜索你想要的东西。看看大嘴牛在某个代码下两者的差别(为了测试的公平性,需要把文件cache drop掉,否则搜索的文件都在cache,两者比较就没有意义了,特别是现在的机器动不动就是4G或者8G的情况下):grep: 1m8.699s ack: 46.179s 速度上确实还是有所提高的。
- 默认就会递归往下找,而不用像grep一样加入-r选项,为大嘴牛省去了不少输入的麻烦,何乐而不为呢。
- 自动忽略版本控制软件所产生的信息以及二进制文件。大嘴牛收购了默认的grep搜出来一堆Binary的符号匹配,这玩意儿屁用没有。另外,.svn目录下面的东西也不会去查找。
- 可以设置想搜索的文件类别。这个大嘴牛看起来很方便,如果你需要用grep来实现,那可鸡巴麻烦了。
- 可以用ack -f来把某个类别的文件全部罗列出来,这个时候并不进行查找,有点像git ls-files。这个功能有时候用起来还是很方便的噢。
- 搜索结果默认就采用高亮,对用户很友好。
-
ripley
-
dazuiniu
-
Newpublic01