[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Passing the results of GREP into a Bash Variable
From: |
Philip Lijnzaad |
Subject: |
Re: Passing the results of GREP into a Bash Variable |
Date: |
11 Jul 2001 17:15:23 +0100 |
[ note: this is not the right forum, use gnu.utils.help ]
On Wed, 11 Jul 2001 01:29:36 GMT,
"Robert" == Robert A Adkins <cnelzie1@home.com> wrote:
Robert> Hello,
Robert> I am working on a script that requires the result of a grep to be
Robert> piped or entered into a variable
a=`grep foo bar` # let's hope that's a short word
Robert> for an if, then, else check.
why need that? Does following do what you want ?
if grep foo bar >/dev/null ; then
echo found foo
else
did not find foo
fi
which is the same as
grep foo bar >/dev/null && echo found foo || echo did not find foo
Unix commands (like grep) have an exit status (echo $?) that is typically 0
if all went fine, non-zero otherwise. The if, while, ||, && etc. commands
actually look at the exit status. 0 counts as 'true', non-zero as 'false' in
this context. The /dev/null bit is to get rid of the stdout, which is prolly
not too interesting. If you want to get rid of stderr as well, do
some-comand >/dev/null 2>&1
Hope this helps,
Philip
--
If you have a procedure with 10 parameters, you probably missed some. (Kraulis)
-----------------------------------------------------------------------------
Philip Lijnzaad, lijnzaad@ebi.ac.uk \ European Bioinformatics Institute,rm A2-08
+44 (0)1223 49 4639 / Wellcome Trust Genome Campus, Hinxton
+44 (0)1223 49 4468 (fax) \ Cambridgeshire CB10 1SD, GREAT BRITAIN