Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

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

Closed
kch opened this Issue · 2 comments

3 participants

Caio Chassot rct Rob Hoelz
Caio Chassot

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
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.

Rob Hoelz
Collaborator

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.

Rob Hoelz 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.