Home Miscellaneous ack – betterthan grep

ack – betterthan grep

by SupportPRO Admin

ACK is a tool like grep, designed for programmers with large trees of heterogeneous source code. ACK is written purely in Perl, and takes advantage of the power of Perl’s regular expressions.
How to install ACK
It can be installed any number of ways:
* Install the CPAN module App::Ack. If you are a Perl user already, this is the way to go.
* Download the standalone version of ack that requires no modules beyond what’s in core Perl, and putting it in your path. If you don’t want to mess with setting up Perl’s CPAN shell, this is easiest.
curl http://betterthangrep.com/ack-standalone > ~/bin/ack && chmod 0755 !#:3
* Install the Macport
* Install the Ubuntu package: ack-grep
* Install the Fedora package: ack
* Install the Gentoo package: sys-apps/ack

Top 10 reasons to use ack instead of grep.
1. It’s blazingly fast because it only searches the stuff you want searched.
2. ack is pure Perl, so it runs on Windows just fine.
3. The standalone version uses no non-standard modules, so you can put it in your ~/bin without fear.
4. Searches recursively through directories by default, while ignoring .svn, CVS and other VCS directories.

* Which would you rather type?

$ grep pattern $(find . -type f | grep -v ‘\.svn’)
$ ack pattern
5. ack ignores most of the crap you don’t want to search

* VCS directories
* blib, the Perl build directory
* backup files like foo~ and #foo#
* binary files, core dumps, etc
6. Ignoring .svn directories means that ack is faster than grep for searching through trees.
7. Lets you specify file types to search, as in –perl or –nohtml.
* Which would you rather type?

$ grep pattern $(find . -name ‘*.pl’ -or -name ‘*.pm’ -or -name ‘*.pod’ | grep -v .svn)
$ ack –perl pattern
Note that ack’s –perl also checks the shebang lines of files without suffixes, which the find command will not.
8. File-filtering capabilities usable without searching with ack -f. This lets you create lists of files of a given type.
$ ack -f –perl > all-perl-files
9. Color highlighting of search results.
10.Uses real Perl regular expressions, not a GNU subset.

If you require help, contact SupportPRO Server Admin

Server not running properly? Get A FREE Server Checkup By Expert Server Admins - $125 Value

Leave a Comment