[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: bash null conditional
- From: Craig White <craigwhite azapple com>
- To: "Community assistance, encouragement, and advice for using Fedora." <fedora-list redhat com>
- Subject: Re: bash null conditional
- Date: Mon, 30 Mar 2009 11:55:41 -0700
On Mon, 2009-03-30 at 13:42 -0500, Robert Nichols wrote:
> Craig White wrote:
> > I'm in my bash book and looking on web but can't seem to resolve this
> > simple problem.
> >
> > $ if [ -n "grep A121 myfile.csv" ]; then echo "null"; fi
> > null
> >
> > $ if [ -n "grep A125 myfile.csv" ]; then echo "null"; fi
> > null
> >
> > A125 definitely is null when I just run the grep command in the quotes
> > but A121 definitely is not null.
> >
> > What am I missing on the if/null operator here?
>
> As written, you are asking if the literal string "grep A121 myfile.csv"
> is non-null, which obviously is true and has nothing whatsoever to do
> with the 'grep' command, which is never invoked.
>
> $ if [ -n "`grep A121 myfile.csv`" ]; then echo "null"; fi
>
> This will actually invoke 'grep' and insert its output into the string
> to be tested.
----
yeah...I actually started with backticks and was trying various things.
This seems to work...
$ if [ `grep -c A121 myfile.csv` -eq 0 ]; then echo "null"; fi
$ if [ `grep -c A125 myfile.csv` -eq 0 ]; then echo "null"; fi
null
$
but if someone clarifies the -n (null) result, I would be grateful.
Thanks
Craig
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]