9-Linux grep return code

The exit code is 1 because nothing was matched by grep.

EXIT STATUS The exit status is 0 if selected lines are found, and 1 if not found. If an error occurred the exit status is 2. (Note: POSIX error handling code should check for '2' or greater.)

The output is zero because the count of 'Total' is zero. This due to the -c option:

-c, --count Suppress normal output; instead print a count of matching lines for each input file. With the -v, --invert-match option (see below), count non-matching lines. (-c is specified by POSIX.)

If you would like to force an exit code of 0, you can just append || true to your command:

echo 'Total' | grep -c No || true
posted @ 2020-06-24 15:18  番茄土豆西红柿  阅读(267)  评论(0编辑  收藏  举报
TOP