Skip to content


Subversion checkout URL

You can clone with
Download ZIP


implement grep's -q, --quiet, --silent #107

kch opened this Issue · 2 comments

3 participants


Suppresses normal output.

update: I have edited this twice now with conflicting claims. The current post reflects what I'm getting with ack 1.90.

With grep, when you use -q it'll exit with 0 only if there's a match.

That's useful when you're using grep/ack as a test condition for another command.

grep -q … && do_something

Right now, simply directing ack's output to /dev/null seems to work here,

ack … >/dev/null && do_something

So -q would be just nice shorthand.

I also noticed this interesting bit of historical trivia in the man for grep. Make what you will of it.

-s, --no-messages
  Suppress error messages about nonexistent or unreadable files.   Portability
  note:  unlike GNU grep, traditional grep did not conform to POSIX.2, because
  traditional grep lacked a -q option and  its  -s  option  behaved  like  GNU
  grep's -q option.  Shell scripts intended to be portable to traditional grep
  should avoid both -q and -s and should redirect output to /dev/null instead.
rct commented

I would like to see -s, --no-messages option, not in the name of grep compatibility but in the name of less typing. Is that what this is about? I think this should probably be a separate issue from the question of a grep -q mode.


ack isn't meant to be interface compatible with grep; that being said, the -s option was added to ack2. If you would like to continue discussing this feature, please open it on the ack2 issues queue.

@hoelzro hoelzro closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.