Skip to content

Comment on Time-saving tips for Linux

Comments

I found out about ack awhile back -- it's like grep on steroids.

I'm a big fan of ack, I love the --output feature, which is super handy. Unfortunately it is hardly ever installed when I need it. It's considerably slower than the highly tuned GNU regex code, which only really matters when you're grepping through a ton of material.

Could you give an example of something useful one could do with ack's --output feature?

The manual's a little light on the details.

All it says is:

  --output=expr
     Output the evaluation of expr for each line
What expression are they talking about? A regular expression? If so, how is that different from a normal grep?

A Perl expression. You could use this for sed-like activities:

    # Print included files.
    ack --output '$1' '#include <(.*)>'
You could presumably do much trickier things as well, since the --output argument can contain any Perl expression.

That's a great example. I just replaced it as the example in the Top 10 List on the front of betterthangrep.com. Thanks.

On Ubuntu, the package name is ack-grep. So use: sudo -i aptitude install ack-grep

Don't go for ack, which is some Kanji character converter.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.