Better Than Grep


I’m not that knowledgable about the command line and controlling a server with it. Over the years I have picked up a few bits – I use nano a lot for editing files, and I like to use grep to search my code.

Or at least I used to.


The other day I was trying to work out how something worked in WordPress, and I was using grep to search the WordPress code base – except it wasn’t traversing the directory tree properly. So I asked on Twitter if I was doing something wrong. I got this as a reply…

@BinaryMoon Have you tried ?

— Simon Prosser (@prossorguk) January 30, 2013

So I checked out a quick read and it looked like what I need. Ack is a replacement for grep designed specifically for programmers.

Installing it was easy – just a single line of code to grab a Perl script from an external website (obviously caution is recommended when doing this sort of thing).

curl > ~/bin/ack && chmod 0755 !#:3

How To Use Ack

Using ack is super simple. All you have to do is navigate to the directory you want to search and then type ack 'search_term'.

To go with this there are a bunch of additional parameters that allow you to display and filter the results in the way that works best for you. For me I have only used a few of the parameters so far – I’ve listed them below. You can read the rest of the commands in the documentation.

Display lines either side of result

ack -A 5 -B 5 'search_query'

The A and B options display the matched line of code, and the lines before and after – with the number of them limited by the size added after the option. In the example above I limited it to 5 lines either side of the result.

Display files only and not results

ack -l 'search_query'

The l option changes the output so that it only displays the filenames of the files that were found to have the search query. I used this to narrow down my search so that I could work out what directory my problem files were in.

Let me know what you think on Mastodon, or BlueSky (or Twitter X if you must).

Related Posts

09 Feb 2017

How to Hide the Archive Title Prefix in WordPress

I don’t remember exactly when it happened but about a year ago WordPress introduced a prefix at the front of WordPress archive titles. This prefix is designed to give context to archives. For example it helps to distinguish between tag...
13 May 2010

6 Tips to Build Better WordPress Themes

If you want to make WordPress themes, for clients, to release for free or to sell, then there are a lot of factors you need to take into consideration. Below are some hints and tips that should help ease your...
30 Nov 2009

WordPress Developer Cookbook

If I am totally honest there aren’t many computer books that I actually find useful, they’re generally for beginners or full of information you can get online for the low-cost of a Google search or two. WordPress Cookbook That’s why...
27 May 2013

WordPress: 10 Years Young, What Does The Future Hold?

WordPress is now 10 years old. I started using wordpress 9 years ago – which means I joined the WordPress community early on. The reason I chose WordPress is simply because of the fabled 5 minute install process – I...